继承和派生类(第二章C面向对象程序设计)(共8页).doc
《继承和派生类(第二章C面向对象程序设计)(共8页).doc》由会员分享,可在线阅读,更多相关《继承和派生类(第二章C面向对象程序设计)(共8页).doc(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上20、派生类是如何定义的?答:class classname:access-label base-class这里access-label是public、protected或private,base-class是已定义的类的名字。 21、派生类的继承方式有哪些?它们各有哪些特点?答:继承方式有public继承、protected继承、private继承。1)公有继承:基类公有成员相当于派生类的公有成员;基类保护成员相当于派生类的保护成员;基类的私有成员,派生类内部成员无法直接访问。2)私有继承:基类公有成员和保护成员都相当于派生类的私有成员,派生类只能通过自身的成员函数
2、访问它们;基类的私有成员,无论派生类内部成员或派生类的对象都无法直接。3)保护继承:基类公有成员和保护成员都相当于派生类的保护成员,派生类可以通过自身的成员函数或其子类的成员函数访问它们;基类的私有成员,无论派生类内部成员或派生类的对象都无法直接访问22、在定义派生类的过程中,如何对基类的数据成员进行初始化? 答:调用基类的初始化函数,或者如果有权限直接访问该数据成员,那就直接赋值初始化。 23、在派生类中能否直接访问基类中的私有成员?在派生类中如何实现访问基类中的私有成员?答:不能。为了实现访问基类的私有成员,可以(1)在类定义体中增加保护段(protected);(2)将需访问基类私有成员
3、的派生类成员函数声明为基类的友元。 24、什么是虚基类?它的作用如何? 答:在派生类继承基类时,加上一个virtual关键词则为虚基类继承,如: class derive : virtual public base ;作用:当某类的部分或全部直接基类是从另一个基类共同派生而来时,这直接基类中,从上一级基类继承来的成员就拥有相同的名称,派生类的对象的这些同名成员在内存中同时拥有多个拷贝,同一个函数名有多个映射。可以使用作用域分辨符来唯一标识并分别访问它们。也可以将共同基类设置为虚基类,这时从不同的路径继承过来的同名数据成员在内存中只拥有一个拷贝,同一个函数名也只有一个映射。也就是说虚基类解决了同
4、名成员的唯一标识问题。 25、分析一下程序的结果。 程序1:#includeclass A public: A(int I,int j) a=i;b=j void Offset(int x,int y) a+=x; b+=y; void Display() cout(a,b)endl; private: int a,b; class B:private A public: B(int I,int j,int k,int l):A(I,j) x=k; y=l; void Display() coutx,yendl; void Move() Offset(3,5); void Show() A:D
5、isplay(); private: int x,y; ; void main() A e(1,2); e.Display(); B d(3,4,5,6); d.Move(); d.Display(); d,Show(); 运行结果:(1,2) 5,6 (6,9) 程序2:#includeclass CRootpublic: int small; CRoot() small=2; CRoot(int n;) void showsmall() cout”small=”smallendl; ;class CDer1:public CRoot public: CDer(int m):CRoot(m0
6、 ;class CDer2:public CRootpublic: int small; CRoot2(int n=0) small=n; ;void main() CRoot A; CDer1 B(3); CDer2 C; A.showsmall(); B.showsmall(); C.showsmall();运行结果:small=2 small=3 small=2 26、定义一个人员类CPerson,包括市局成员:姓名、编号、性别和用于输入/输出的成员函数。在此基础上派生出学生类CStudent(增加成绩)和教师类CTeacher(增加教龄),并实现对学生和教师信息的输入/输出。#incl
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 继承 派生 第二 面向 对象 程序设计
限制150内