第七章+继承和派生z

第七章+继承和派生z

ID:45727531

大小:834.50 KB

页数:75页

时间:2019-11-17

第七章+继承和派生z_第1页
第七章+继承和派生z_第2页
第七章+继承和派生z_第3页
第七章+继承和派生z_第4页
第七章+继承和派生z_第5页
资源描述:

《第七章+继承和派生z》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第七章继承与派生C++语言程序设计本章主要内容类的继承与派生派生类成员的访问控制单继承与多继承派生类的构造、析构函数类成员的标识与访问类的继承与派生保持已有类的特性而构造新类的过程称为继承。在已有类的基础上新增自己的特性而产生新类的过程称为派生。被继承的已有类称为基类(父类)。派生出的新类称为派生类。继承与派生问题举例(1)类的继承与派生继承与派生问题举例(2)类的继承与派生继承与派生问题举例(3)类的继承与派生继承与派生问题举例(4)类的继承与派生继承与派生的目的继承的目的:实现代码重用。派生的目的:当新的问题出

2、现,原有程序无法解决(或不能完全解决)时,需要对原有程序进行改造。类的继承与派生单继承和多继承单继承:一个派生类只有一个直接基类。多继承:一个派生类同时有多个基类。直接基类:在类族中,直接派生出某类的类。间接基类:某类的直接基类的基类甚至更高层的基类。类的继承与派生派生类的声明(*)class派生类名:继承方式基类名{派生类成员声明;}派生类成员是指除了从基类继承过来的所有成员以外,新增加的数据成员和函数成员。类的继承与派生派生类的生成过程一般来说,派生新类是完成如下三个方面的任务:吸收基类成员。添加新的成员。改造

3、基类成员。结合例7-1进行分析。类的继承与派生继承方式继承方式规定了如何访问从基类继承的成员。不同继承方式的影响主要体现在:派生类成员对基类成员的访问权限。通过派生类对象对基类成员的访问权限。三种继承方式:公有继承私有继承保护继承类成员的访问控制公有继承(public)基类的public和protected成员的访问属性在派生类中保持不变,但基类的private成员在派生类中不可直接访问。派生类中的成员函数可以直接访问基类中的public和protected成员,但不能直接访问基类的private成员。通过派生类的

4、对象只能直接访问基类的public成员。类成员的访问控制例7-1公有继承举例classPoint{public:voidInitP(floatxx=0,floatyy=0){X=xx;Y=yy;}voidMove(floatxOff,floatyOff){X+=xOff;Y+=yOff;}floatGetX(){returnX;}floatGetY(){returnY;}private:floatX,Y;};类成员的访问控制classRectangle:publicPoint{public:voidInitR(fl

5、oatx,floaty,floatw,floath){InitP(x,y);W=w;H=h;}floatGetH(){returnH;}floatGetW(){returnW;}private:floatW,H;};#include#includeintmain(){Rectanglerect;rect.InitR(2,3,20,10);rect.Move(3,2);cout<

6、','<

7、,floaty,floatw,floath){InitP(x,y);W=w;H=h;}voidMove(floatxOff,floatyOff){Point::Move(xOff,yOff);}floatGetX(){returnPoint::GetX();}floatGetY(){returnPoint::GetY();}floatGetH(){returnH;}floatGetW(){returnW;}private:floatW,H;};类成员的访问控制#include#include

8、intmain(){Rectanglerect;rect.InitR(2,3,20,10);rect.Move(3,2);cout<

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。