C++试验九继承.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C试验九继承

实验九 继承 1、实验目的 1)掌握继承的实现方法; 2)继承中常见问题的处理方法。 2、实验内容 2.1派生类----单继承 1.分析下面的程序,指出程序运行的结果 #includeiostream.h class CBase {public: void fn1(); }; void CBase::fn1() {cout调用基类类的函数fn1()\n; } class CDerived:public CBase { public: void fn1(); }; void CDerived::fn1() {cout调用派生类的函数fn1()\n; } void main() { CDerived d1; CBase *pb=d1; CBase pd=d1; d1.fn1(); pb-fn1(); pd.fn1(); } 运行结果: 2)定义一个图形类,其中有保护类型的成员数据:高度和宽度,一个公有的构造函数。由该图形类建立两个派生类:矩形类和等腰三角形类。在每个派生类中都包含一个函数area(),分别用来计算矩形和等腰三角形的面积。 2.3多继承和虚基类 1)分析下面的程序,指出程序运行的结果: #includeiostream.h class CBase1 { int x; public: CBase1() {x=0;cout调用构造函数CBase1()!\n;} CBase1(int a) {x=1;cout调用构造函数CBase1(int)!\n;} ~CBase1(){cout调用析构函数~CBase1()!\n;} }; class CBase2 {int y; public: CBase2() {y=0;cout调用构造函数CBase2()!\n;} CBase2(int a) {y=a;cout调用构造函数CBase2(int)!\n;} ~CBase2(){cout调用析构函数~CBase2()!\n;} }; class A {int x; public: A(){x=0;cout调用构造函数A()!\n;} A(int a){x=a;cout调用构造函数A(int)!\n;} ~A(){cout调用析构函数~A()!\n;} }; class CDerived:public CBase1,virtual public CBase2 { A a; public: CDerived() {cout调用构造函数CDerived()!\n;} CDerived(int x,int y,int z):a(x),CBase1(y),CBase2(z) {cout调用构造函数CDerived(int,int,int)!\n;} ~CDerived(){cout调用析构函数~CDerived()!\n;} }; void main() { CDerived *x=new CDerived; CDerived y(2,3,4); delete x; coutmain()函数结束!\n; } 实验结果: 2)定义一个人员类cpeople,其属性有(保护类型):姓名、性别、年龄;从中派生出学生类cstudent,添加属性:学号、入学时间和入学成绩;从cpeople类再派生出教师类cteacher,添加属性:职务、部门、工作时间;有cstudent类派生研究生类cgraduate,添加属性:研究方向和导师,由cgraduate和cteacher共同派生出在职研究生类cgradonwork,分别定义其中的构造函数和输出函数。主函数中定义各种类的对象,并完成测试。 1.程序设计如下:#includeiostream.h #includestring.h struct person { char name[20]; char sex[5]; int age; double hight; char address[7]; }; void main() { person a; person b; strcpy(a.name ,邱畅畅); a.age=3; cout姓名:a.nameendl; cout年龄:a.ageendl; strcpy(b.name ,林夏香); b.hight=1.80; strcpy(b.address,地球上); cout姓名:b.nameendl; cout身高:b.hightendl; cout地址:b.addressendl; } 2.实验结果: 3、实验结论:

文档评论(0)

f8r9t5c + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档