资源预览内容
第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
亲,该文档总共6页全部预览完了,如果喜欢就下载吧!
资源描述
实验六 多态与虚函数的应用班级: B12511 学号: 20124051109 姓名: 王菊芳 成绩: 一 实验目的1. 理解多态性的相关概念。2. 理解静态关联与动态关联的相关概念。3. 掌握虚函数的使用方法。4. 掌握纯虚函数与抽象类的使用方法。二 使用的设备与仪器计算机+Windows XP +Visual C+6.0三 实验内容及要求1、 定义抽象类 Shape,在此基础上派生出圆类 Circle 与正方形类 Square,两个派生类都有计算面积的函数 Area( )、计算周长的函数 Perim( )与显示面积周长的函数Show( )。程序中通过基类的指针调用派生类中的函数。 (必做)2、 设计一个 Person 类,包含 name 与 age 两个数据成员;由 Person 类派生出学生类Student,添加学号 Number;由 Student 类派生出研究生类 Graduate ,添加导师姓名 instructor 属性;每个类均有带参数构造函数、析构函数与显示信息的函数。程序中动态创建三类对象,通过基类的指针指向派生类对象,并调用派生类对象的函数。 (选做)四 实验步骤1、 程序代码:#includeusing namespace std;class shapepublic:virtual void show()=0;class circle:public shapeprivate:double radius;public:circle(double r)radius=r;double area()return 3.14*radius*radius;double perim()return 2*3.14*radius;void show()coutshow();p=p-show();return 0;运行结果:area of circle:78.5perim of circle:31.4area of suare:56perim of squre:30Press any key to continue2、 程序代码:#include#includeusing namespace std;class personprotected:string name;int age;public:person(string na,int a)name=na;age=a;virtual void show()coutshow();pt=new student(wang,17,05);pt-show();pt=new graduate(li,22,14,zhaohui);pt-show();delete pt; return 0;运行结果:name:zhangage:15name:wangage:17number:5name:liage:22number:14instructor:zhaohuigraduatestudentpersonPress any key to continue五 实验总结1、 实验中遇到的问题及解决方法第一题做时基本没有问题,第二题时忘记了如何动态地创建对象,看书以后解决了问题。还有就是类的最后忘了加分号出错2、 个人收获与体会1. 理解了多态性的相关概念。2. 理解了静态关联与动态关联的相关概念。3. 掌握了虚函数的使用方法。4. 掌握了纯虚函数与抽象类的使用方法。
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号