




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、内蒙古科技大学信息工程学院计算机系面向对象程序设计实验报告姓名学号实验成绩班级实验日期第 16 周(星期 二 ) 6 月 11 日第 节项目号、实验名称实验11 多态(二)实验要求(任课教师提供)一、实验目的1理解掌握运算符、()的重载;2理解类型转换,掌握类型转换函数的设计和使用;3理解和掌握虚函数的作用;4掌握利用虚函数实现C+的运行时多态性;5理解纯虚类和抽象类。二、实验内容 2.1练习(一):1理解下面的程序,并在VC+6.0下运行查看结果,回答程序后面的问题。#include #include stdlib.hclass CComplexpublic:CComplex(double
2、r = 0, double i = 0)real = r;imag = i;int operator int()return (int)real;void Display(void)cout ( real , imag ) endl;protected:double real;double imag;class CVectorpublic:CVector(CComplex &obj1, CComplex &obj2, CComplex &obj3, CComplex &obj4)objArray0 = obj1;objArray1 = obj2;objArray2 = obj3;objArra
3、y3 = obj4;friend CComplex &operator(CVector obj, int n);private:CComplex objArray4;CComplex &operator(CVector obj, int n)if(n3)coutOut of range!endl;exit(0);return obj.objArrayn;void main()CComplex c1(1.1, 1.1);CComplex c2(2.2, 2.2);CComplex c3(3.3, 3.3);CComplex c4(4.4, 4.4);CVector v(c1,c2,c3,c4);
4、v0.Display();v1.Display();v2.Display();v3.Display();v0 = 5.5; -v1 = CComplex(6.6); -v2 = int(CComplex(7.7); -v3 = int(CComplex(8.8,9.9); -v0.Display();v1.Display();v2.Display();v3.Display();问题一:上述程序存在两大错误,在不修改主函数和程序原意的前提下,改正该程序中存在的错误。问题二:处的转换属于显式转换还是隐式转换,并解释该转换过程。问题三:处的转换属于显式转换还是隐式转换,并解释该转换过程。问题四:解释
5、处的转换过程。问题五:解释处的转换过程。2.2练习(二):1编写一个程序计算三角形、正方形和圆形的面积,要求抽象出一个基类base,在其中说明一个虚函数,用来求面积,并利用单接口,多实现版本设计各图形面积的方法。实验内容(由学生填写)#include#includeusingnamespacestd;classCComplexpublic:CComplex(doubler=0,doublei=0)real=r;imag=i;/*int*/operatorint()/类型转换成员函数功能是把类名所制定的类类型转换为operator后的类型名指定类型return(int)real;voidDisp
6、lay(void)cout(real,imag)endl;protected:doublereal;doubleimag;classCVectorpublic:CVector(CComplex&obj1,CComplex&obj2,CComplex&obj3,CComplex&obj4)objArray0=obj1;objArray1=obj2;objArray2=obj3;objArray3=obj4;CComplex&operator(intn);/下标运算符只能重载为成员函数,删去参数表中前面的形参private:CComplexobjArray4;CComplex&CVector:op
7、erator(intn)if(n3)coutOutofrange!endl;exit(0);returnobjArrayn;intmain()CComplexc1(1.1,1.1);CComplexc2(2.2,2.2);CComplexc3(3.3,3.3);CComplexc4(4.4,4.4);CVectorv(c1,c2,c3,c4);v0.Display();v1.Display();v2.Display();v3.Display();v0=5.5;/-v1=CComplex(6.6);/-v2=int(CComplex(7.7);/-v3=int(CComplex(8.8,9.9)
8、;/-v0.Display();v1.Display();v2.Display();v3.Display();return0;/问题一:上述程序存在两大错误,在不修改主函数和程序原意的前提下,改正该程序中存在的错误。/问题二:处的转换属于显式转换还是隐式转换,并解释该转换过程。/隐式转换,隐式调用了带默认参数的构造函数/问题三:处的转换属于显式转换还是隐式转换,并解释该转换过程。/显示转换,CComplex类对象c2调用构造函数进行转换,把6.6转换为一个临时对象,在复制给v1/问题四:解释处的转换过程。/首先把整形数字7.7显示调用带默认的构造函数,转换为一个临时对象,然后临时对象调用了类型
9、转换函数/转换为整型int类型,7.7小数点后的数字被省略,然后转换之后的整型再隐含调用构造函数,转换为临时对/象,复制给v2/问题五:解释处的转换过程。/同问题四,类型转换返回值只有real,后面9.9被省略2.2#includeusingnamespacestd;classbasevirtualvoidarea()=0;virtualvoidsetdata()=0;classsanjiaoxing:publicbasepublic:sanjiaoxing()voidsetdata()cout请输入三角形的高:high;cout请输入三角形的底:di;voidarea()cout三角形的面积
10、=(high*di)/2endl;private:doublehigh;doubledi;classzhengfangxing:publicbaseprivate:doublea;public:zhengfangxing()voidsetdata()cout请输入正方形的边长:a;voidarea()cout正方形面积=a*aendl;classyuan:publicbaseprivate:doubler;public:yuan()voidsetdata()cout请输入圆形的半径:r;voidarea()cout圆形的面积=3.14159*r*rendl;intmain()sanjiaoxingss;ss.setdata();ss.area();zhengfangxingzz;zz.setdata();zz.area();yuanyy;yy.setdata();yy.area();return0;实验总结(由学生填写)1理解掌握运算符、()的重载;2理解类型转换,掌握类型转换函数的设计和使用;3理解和掌握虚函数的作用;4掌握利用虚函数实现C+的运行时多态性;5理解纯虚类和抽象类。说明:1、每个实验项目填写一份实验报告
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 行政单位行政人员劳动合同范本:应急管理
- 工厂安全与环保知识培训课件
- 马铃薯种植基地与农业保险公司的风险共担合同
- 航空货运合同托运人航空运输服务标准与责任
- 跨境电商项目建议书编制与电商顾问合同
- 香港劳务派遣与薪酬福利管理合同
- 马铃薯产业园区建设与种植、销售合作合同
- 行业合同范文
- 互联网金融平台合规发展动态与风险管理策略研究报告
- 欧文集体歪头看课件
- 2025年中国物流集团国际物流事业部招聘面试经验及模拟题集
- 乡镇安全培训课件
- 2025年航空业面试者必看航空公司招聘笔试预测试题及答案
- 2025年全国企业员工全面质量管理知识竞赛题及参考答案
- 2025年《中华人民共和国民法典》网络知识竞赛100题题库(含答案)
- 2025秋仁爱科普版(2024)七年级上册英语教学计划
- 2025四川省公安厅招聘辅警(448人)笔试参考题库附答案解析
- 《非物质文化遗产概论(第三版)》全套教学课件
- 2025新疆天泽和达水务科技有限公司部分岗位社会招聘28人笔试备考题库及答案解析
- 2025年信息安全应急演练记录
- 中望CAD机械版使用手册
评论
0/150
提交评论