第十三周实践项目课后————交通工具类(2)

来源:互联网 发布:c语言编写哥德巴赫猜想 编辑:程序博客网 时间:2024/05/22 15:01

问题及代码:

/*copyright(c)2016.烟台大学计算机学院 * All rights reserved, * 文件名称:text.Cpp * 作者:吴敬超 * 完成日期:2016年5月23日 * 版本号:codeblock * * 问题描述: * 输入描述: * 程序输出: 输出结果 */#include<iostream>using namespace std;class Vehicle{public:    virtual void run()const    {        cout<<"run a vehicle."<<endl;    }};class Car:public Vehicle{public:    void run() const    {        cout<<"run a car."<<endl;    }};class Airplane:public Vehicle{public:    void run() const    {        cout<<"run a airplane."<<endl;    }};int main(){    cout<<"(a) 直接用对象访问成员函数:"<<endl;    Vehicle v;    v.run();    Car car;    Airplane airplane;    car.run();    airplane.run();    cout<<"(b) 用指向基类的指针访问成员函数:"<<endl;    Vehicle *vp;    vp=&car;    vp->run();    vp=&airplane;    vp->run();    return 0;}

运行结果:

课后问答:

当vehicle定义为虚函数是调用的是派生类中的成员函数,C++多态性是通过虚函数来实现的,多态性是虚函数允许子类重新定义成员函数,而子类重新定义父类的做法称为覆盖。

0 0
原创粉丝点击