实验报告3 继承和多态.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文档。上传文档
查看更多
实验报告3 继承和多态

计 算 机 课 程 实 验 报 告 2012—2013学年度 第一 学期 系别:数学与计算机科学学院 实验课程 C++面向对象程序设计 班 级 级计算机科学与技术 学 号 11 姓 名 蔡兴明 指导教师 马学梅 实验题目 继承与多态(一) 日 期 2012-9-29 实验目的 及要求 1、理解继承在面向对象程序中的重要作用、继承和派生的概念; 2、掌握通过继承派生一个新类的方法; 3、理解多态的概念、运算符重载的概念、虚函数的作用; 4、学习实现多态,掌握几种常用运算符的重载;; 5、掌握虚函数的定义和使用方法; 6、简单面向对象程序的编写 实验内容及具体步骤: 内容1:函数重载 (1) 构造函数重载 ,运行以下程序, #include iostream.h class COMPLEX { public: COMPLEX (double r=0,double i=0); COMPLEX(const COMPLEX other); void print( ); COMPLEX add(const COMPLEX other); COMPLEX subs(const COMPLEX other); protected: double real, image; }; COMPLEX:: COMPLEX ( double r, double i) { real = r; image =i; return; } COMPLEX:: COMPLEX( const COMPLEX other ) { real = other.real; image =other.image; return;} void COMPLEX:: print( ) { cout real; if (image0) cout “+”image“i”; else if (image 0) cout image “i”; cout “\n”; return; } COMPLEX COMPLEX ::add (const COMPLEX other ) { real = real+other.real; image =image+other.image; return *this; } COMPLEX COMPLEX ::subs(const COMPLEX other ) { real = real-other.real; image =image-other.image; return *this; } int main ( ) { COMPLEX c1(1,2) ; COMPLEX c2(2) ; COMPLEX c3(c1) ; c3.print ( ); c2.add(c1); c3. subs(c2); c3.print( ); return 0; } 给出输出结果,分析this的用途.在此程序的基础上实现运算符”+”和”-“的重载 this是自身的地址,但是*this就是自身了.是按值回返了.如果函数的回返值是带有号的,那么回返值就是引用了 构造出五个公共类函数,此函数在运行时没有出现问题,但是我经过仔细阅读理解程序的过程中,主要对这个this的用途和用法在网上查阅学习了下,一种情况就是,在类的非静态成员函数中返回类对象本身的时候,直接使用 return *this;另外一种情况是当参数与成员变量名相同时,如this-n = n (不能写成n = n)。 (2) 运算符重载:以下程序要求实现运算符++的前置和后置重载,但实际上并没有实现。试分析原因,并作出修改,以实现此功能。 #include iostream.h class OperClass { int x; public: OperClass( ); OperClass operator ++( ); OperClass operator ++

文档评论(0)

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

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

1亿VIP精品文档

相关文档