内蒙古科技大学面向对象的程序设计实验8-继承(一) .pdf

内蒙古科技大学面向对象的程序设计实验8-继承(一) .pdf

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
内蒙古科技大学面向对象的程 序设计实验 8-继承(一) 内蒙古科技大学 面向对象的程序设计 实验报告 课程名称: 面向对象的程序设计 姓名: 陈伟光 实验名称: 继承(一) 学号: 1567159118 任课教师: 刘月峰 专业: 软件工程 指导教师: 刘月峰 班级: 15-软件一班 一、实验目的 1.理解继承的含义以及声明; 2 .理解共有派生、私有派生和保护派生的含义以及使用; 3 .理解单派生类中构造函数和析构函数的调用顺序。 二、实验环境 编译器:Visual C++ 6.0. 操作系统:Windows 7 旗舰版 三、实验内容 2.1 练习(一): 1.理解下面的程序,并在VC++6.0 下运行查看结果,回答程序后面的问题。 #include iostream.h class CBase { public: CBase(int a) :a(a) { 实验题目源代码如下: 直接编译结果如下: 查看错因,首先前两句话写明,在创建CBase 和CDerive 对象 时候,没有传递参数,实际代码中CDerive 根本没有正确的构造函 数,代码区中加入一段带有初始化列表的构造函数 第三句话指明基类对象 b 直接调用 CBase 类保护成员函数, 属于类外调用,权限错误,此处可以将 print 的权限改为 public 修改后的代码如下: 然后尝试编译运行: 运行成功,符合题意 练习 2 实验题目提供源代码如下: 尝试编译: 错误集中在基类成员数据 a 上,分析代码,CDerive 类对象 d 创建时候一共有三个参数,1 传递至派生类,再调用基类构造函 数,3 直接传递给派生类构造函数, 2 传递给了派生类的中内嵌的 基类成员对象,然而在公有继承下,派生类对象只能访问基类的公 有数据,所以此处将 a 的权限改为 public, 修改之后的代码如下: 尝试编译运行: 结果和代码本意相同,修改成功 练习 3 根据题意,设计代码如下: 面积计算以及斜率计算分别写在了 CLine 类和 CCircle 类的 构造函数中,在创建对象的时候输入 x2,y2 r 即可算出距离和面 积 试运行结果如下: 运行结果正确 五、实验总结 实验源代码: 练习(一) #include iostream.h class CBase { public: CBase(int a):a(a) { } // protected: void print() //错误 1.CBase 类对象类外无法直接调用此主函数,应该改为 public 型 { couta=aendl; } private: int a; }; class CDerive : public CBase { public: CDerive(int a,int b):CBase(a),b(b) //错误 2.构造函数错误,初始化列表和参数错误 {} void print() { CBase::print(); //保护继承下,派生类中可以访问基类的公有和保护数据 coutb=bendl; } private: int b; }; void main() { CDerive d(0,0); //因为原题构造函数中有形参,所以创建要加上参数 d.print(); CBase b(0); b.print(); } /* #include iostream.h class CBase { public: CBase(int a) :a(a) { } protected: void print() { couta=aendl; } private: int a; }; class CDerive : public CBase { public: void print() { CBase::print(); cout

文档评论(0)

. + 关注
官方认证
内容提供者

专注于职业教育考试,学历提升。

版权声明书
用户编号:8032132030000054
认证主体社旗县清显文具店
IP属地河南
统一社会信用代码/组织机构代码
92411327MA45REK87Q

1亿VIP精品文档

相关文档