实验六 多态性
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验报告
课程:面向对象技术学号:1010431079 姓名:郝祥海
班级:2010级计算机软件(嵌入式系统)1班
教师:周晓
计算机科学与技术系
实验六多态性
一、实验目的及要求
1.掌握运算符重载的方法;
2.掌握使用虚函数实现动态多态性。
二、实验环境
硬件:计算机软件:Microsoft Visual C++
三、实验内容
声明一个车(vehicle)基类,有Run、Stop等成员函数,由此派生出自行车(bicycle)类、汽车(motorcar)类,从bicycle和motorcar派生出摩托车(motorcycle)类,它们都有Run、Stop等成员函数。观察虚函数的作用。
四、实验结果(附截图)
五、总结
六、附录(源程序清单)
#include
using namespace std;
class vehicle{
public :
virtual void Run(){cout<<"vehicle Run!"< virtual void Stop(){cout<<"vehicle Stop!"< }; class bicycle: public vehicle{ public: void Run(){cout<<"bicycle Run!"< void Stop(){cout<<"bicycle Stop!"< }; class motorcar: virtual public vehicle{ public: void Run(){cout<<"motorcar Run!"< void Stop(){cout<<"motorcar Stop!"< }; class motorcycle: public bicycle,public motorcar{ public: void Run(){cout<<"motorcycle Run!"< void Stop(){cout<<"motorcycle Stop!"< void display(vehicle *ptr){ ptr->Run(); ptr->Stop(); cout< } int main(){ vehicle p1; bicycle p2; motorcar p3; motorcycle mc; display(&p1); display(&p2); display(&p3); mc.Run(); mc.Stop(); return 0; }