《C程序设计教程10.pptx》由会员分享,可在线阅读,更多相关《C程序设计教程10.pptx(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、派生类对象结构第1页/共18页class 子类类名:继承类型 基类类名/子类类定义 继承类型:private public protected第2页/共18页10.2 访问父类成员继承父类成员 父类成员在内存结构中存在于子类对象中,所以父类成员在一定条件下可以被子类代码或外部代码访问类内访问控制私有保护公有第3页/共18页类内访问控制 访问属性继承publicprotectedprivatepublicpublicprotectedprivateprotectedprotectedprotectedprivateprivateprivateprivateprivate第4页/共18页10.3
2、派生类的构造缺省构造自定义构造拷贝构造与赋值对象构造顺序第5页/共18页10.4 继承方式继承访问控制publicprotectedprivate调整访问控制private protected第6页/共18页10.5 继承与组合对象结构性质差异继承设计组合设计第7页/共18页 gs对象namesemesterHoursaverageadvisorqualifierGrade基类部分派生类部分Advusor对象成员基类数据成员派生类新增其他数据成员第8页/共18页 gs_a对象 name semesterHours averageadvisorqualifierGradeB类对象内存结构B对象成
3、员A类数据成员A类对象成员第9页/共18页性质差异继承(A继承B)派生类A定义中看不到基类B的定义派生类A对象中含基类B的成员基类B中的private成员不能在派生类A中访问派生类A对象是基类B对象IS关系组合(A组合B)类A定义中看到组合类B类型的对象成员定义类A对象中含组合类B对象的成员组合类B中只有public成员才能在类A中访问类A对象含有组合类B对象HAS关系第10页/共18页点和圆继承和组合点的设计:点的坐标,角度,距离,点的移动,点的加操作,点的赋值加操作圆的设计:圆点,半径,面积,周长,圆的移动,半径的修改新增成员:半径,面积计算,周长计算,移动操作,半径修改操作继承设计圆是一
4、个半径不为0的点。组合设计圆里有一个类型为Point的圆点第11页/共18页10.6 多继承概念多继承结构基类成员名冲突基类分解第12页/共18页多继承结构第13页/共18页基类成员名冲突class 派生类子类:public 基类1,public 基类2 /派生类类定义无命名冲突时:子类对象.成员 或 成员有命名冲突时:子类对象.基类1:成员 或 基类1:成员第14页/共18页基类分解第15页/共18页10.7 多继承技术第16页/共18页虚拟继承class 派生类1:virtual public 基类 /派生类1类定义class 派生类2:virtual public 基类 /派生类2类定义class 派生类子类:public 派生类1,public 派生类2 /派生类子类类定义第17页/共18页感谢您的欣赏!第18页/共18页