- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
12.4.5 CommissionEmployee-BasePlusCommissionEmployee Inheritance Hierarchy Using private Data(在派生类中重定义基类成员) Set the CommissionEmployee data members back to private to enforce good software engineering. use base class CommissionEmployees public member functions to manipulate CommissionEmployees private data. P 12.17 -20 注意: 通过调用基类的public成员函数来访问基类的私有数据成员 当功能相同时,尽量调用成员函数,以避免代码拷贝。 重定义基类成员函数时,一定要使用“::”访问基类成员,否则会引起无限递归,例如:earnings() 注意print()和earnings()的重新定义:调用基类的print()和earnings()函数 符合软件工程要求:使用继承,通过调用成员函数隐藏了数据,保证了数据的一致性。 Topics 12.1 Introduction 12.2 Base Classes and Derived Classes 12.3 Protected Members 12.4 Relationship between Base Classes and Derived Classes 12.5 Constructors and Destructors in Derived Classes 12.6 public, protected and private Inheritance 12.7 Software Engineering with Inheritance 12.5 Constructors and Destructors in Derived Classes 构造顺序 建立派生类的实例对象时、必须调用基类的构造函数来初始化派生类对象的继承成员。 派生类的构造函数既可以隐式调用基类的构造函数,也可以在派生类的构造函数中通过给基类提供初始化值显式地调用。 基类构造函数-派生类构造函数 析构顺序 析构函数的调用顺序和构造函数的顺序相反,因此派生类的析构函数在基类析构函数之前调用。 P 12.22-26 Review 全局对象:在任何函数(含main)执行前,构造;在程序结束时,析构. 局部对象: 自动变量:对象定义时,构造;块结束时,析构. 静态变量:首次定义时,构造;程序结束时,析构. 对象析构顺序恰好与构造顺序相反. 特例1:调用exit函数退出程序执行时,不调用剩余自动对象的析构函数. 特例2:调用abort函数退出程序执行时,不调用任何剩余对象的析构函数. int main() { cout fixed setprecision( 2 ); { // begin new scope CommissionEmployee employee1( Bob, Lewis, 333-33-3333, 5000, .04 ); } // end scope cout endl; BasePlusCommissionEmployee employee2( Lisa, Jones, 555-55-5555, 2000, .06, 800 ); cout endl; BasePlusCommissionEmployee employee3( Mark, Sands, 888-88-8888, 8000, .15, 2000 ); cout endl; return 0; } // end main employee1 employee2 CommissionEmployee BasePlueCommissionEmployee employee3 CommissionEmployee BasePlueCommissionEmployee CommissionEmployee constructor: CommissionEmployee destructor: CommissionEmployee constructor: BasePlueCommissionEmployee constructor: CommissionEmployee constructor: BasePlueCommissionEmployee constructor: Base
您可能关注的文档
最近下载
- 肉牛生产性能测定技术规范-编制说明.pdf VIP
- 中医药治疗乙型肝炎的优势及存在的问题.docx VIP
- 高危新生儿眼病筛查分类管理专家共识(2024).pptx VIP
- 24J306国家建筑标准设计图集.docx
- 汽车轮毂结构优化与轻量化设计研究.docx VIP
- 生物质呋喃基新材料呋喃二甲酸(FDCA)项目可行性研究报告写作模板-申批备案.doc
- 2025年搬运机器人行业研究报告及未来五至十年行业预测分析报告.docx
- FDCA行业动态报告:FDCA发展潜力巨大,下游制成PEF替代空间广阔.docx
- 学前儿童美术教育与活动指导第4版全套教学课件.pptx
- 预算编制服务投标方案(技术标).pdf
文档评论(0)