- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
继承的重复问题 重复继承是指一个派生类多次继承同一个基类,C++中允许出现重复继承。 解决继承的重复问题有两种方法:一是使用作用域分辨符来惟一标识并分别访问它们;二是可以将直接基类的共同基类设置为虚基类,这时从不同的路径继承过来的该类成员在内存中只拥有一个复制,这样就解决了同名成员的惟一标识问题。 虚基类的声明 虚基类是当基类被继承时,在基类的继承方式前加上关键字virtual,即虚基类声明格式如下: virtual 继承方式 基类名 其中,virtual是虚基类的关键词。虚基类的声明是用在指定派生类时,放在派生类名的后面。 当某类的部分或全部直接基类是从另一个共同基类派生而来时,这些直接基类中从上一级基类继承来的成员就拥有相同的名字。这时可以将直接基类的共同基类设置为虚基类,从不同的路径继承过来的该类成员在内存中只拥有一个复制,从而解决了同名成员的惟一标识问题。 虚基类的构造函数 如果派生类有一个虚基类作为祖先类,那么在派生类构造函数的初始化列表中需要列出对虚基类构造函数的调用,如果未列出则表明调用的是虚基类的无参数构造函数。派生类构造函数调用的次序如下: (1)先调用基类的构造函数,多个基类则按派生类声明时列出的次序、从左到右调用,而不是初始化列表中的次序。 (2)再次调用对象成员(子对象)的构造函数,按类声明中对象成员出现的次序调用,而不是初始化列表中的次序。 (3)最后执行派生类的构造函数。 在以上构造函数调用过程中,同一层中对虚基类构造函数的调用总是先于普通基类的构造函数。 虚基类的析构函数 如果存在虚基类时,派生类析构函数的执行会涉及其基类或虚基类的析构函数的执行。析构函数的调用次序与构造函数的调用正好相反。派生类析构函数调用的次序如下: (1)先执行派生类的析构函数。 (2)其次调用对象成员(子对象)的析构函数,按类声明中对象成员出现的逆序调用,而不是初始化列表中的次序。 (3)再次调用普通基类的析构函数,多个基类则按派生类声明时列出的逆序、从右到左调用,而不是初始化列表中的次序。 在以上析构函数的调用过程中,同一层中对普通基类构造函数的调用总是先于虚基类的析构函数。 最后 组合与继承的比较??? 我们讨论了public继承所支持的是关系,还讨论把对象作为成员的有关系,并举了几个例子。有关系通过复合现有的类建立了新类。例如, 假设有雇员类Employee、生日类BirthDate和电话号码类TelephonehNunber,说雇员(Employee)是—个生日(BirthDate)或电话号码(TelephoneNumber)是不对的. 但是说雇员有生日和电话号码当然是合适的。1.复习 考试 笔试题目 2.STL 3.UML + 设计模式 本文欣赏结束 红藕香残玉簟秋,轻解罗裳,独上兰舟。 云中谁寄锦书来?雁字回时,月满西楼。 谢谢欣赏!! * * 目 录 第1,2天 类和对象 第3天 运算符重载 第4天 练习 第5天 继承(派生) 第6天 多态性(虚函数). 异常处理 第7天 泛型编程、标准模版库的使用 第8天 设计模式、智能指针的原理 第9,10天 练习 继承的概念 继承是面向对象程序设计使代码可以复用的最重要的手段,它允许程序员在保持原有类特性的基础上进行扩展,并增加功能。 继承关系具有双重作用: (1)作为类的构造机制,继承通过扩充、组合现有的类来构造新的类。扩充是指形成现有类的特例——派生类;组合是指抽取出若干现有类的共性形成新的抽象层次——基类。 (2)作为类型的构造机制。如果类B继承类A,则所有要求对象A类型的地方也可以接受B类型的对象。 继承反映了事物之间的联系、事物的共性与个性之间的关系。 从面向对象程序设计的观点来看,继承所表达的正是这样一种类与类之间的关系,这种关系允许在既有类的基础上创建新类。 也就是说,定义新类时可以从一个或多个既有类中继承(即拷贝)所有的数据成员和函数成员,然后加上自己的新成员或重新定义由继承得到的成员。 这就形成了一种类的层次关系,既有类称为基类或父类,以它为基础建立的新类称为派生类,导出类或子类。 派生类的概念 在C++中,可以从一个类派生出另一个类。派生出其他类的类称为基类或父类,被派生的类称为派生类或子类。一个派生类可以从一个基类派生,也可以从多个基类派生。从一个基类派生的继承称为单继承;从多个基类派生的继承称为多继承。 派生类的定义格式 派生类有单继承和多继承两种情况,它们派生类的定义格式稍有不同。 1. 单继承 单继承的定义格式如下: c
您可能关注的文档
最近下载
- 课堂趣味惩罚小游戏——幸运大转盘+课件.pptx VIP
- 人教版六年级数学上册分数乘法解决问题《连续的求一个数的几分之几是多少》课后作业设计.doc VIP
- 山西省致密气开发排采水回注处置概述.docx
- 2025年医药销售外包(CSO)行业研究报告及未来五至十年行业预测分析报告.docx
- 建设的项目用地预审流程.doc VIP
- 《GB_T 24608-2023滚动轴承及其商品零件检验规则》必威体育精装版解读.pptx VIP
- 人教版小学数学六年级上册分数乘法《连续求一个数的几分之几是多少》.pptx VIP
- 新解读《GB_T 300-2023滚动轴承 四列圆锥滚子轴承 外形尺寸》必威体育精装版解读.pptx VIP
- 电动汽车充电基础设施设计与安装图集.pdf VIP
- 新解读《GB_T 297-2015滚动轴承 圆锥滚子轴承 外形尺寸》必威体育精装版解读.docx VIP
文档评论(0)