14-1.2 虚函数

来源:互联网 发布:pc软件是什么意思啊 编辑:程序博客网 时间:2024/06/04 18:15
/* * 程序的版权和版本声明部分 * Copyright (c)2012, 烟台大学计算机学院学生 * All rightsreserved. * 文件名称:abc.cpp* 作 者:田宇  * 完成日期: 2013 年 6 月 5 日 * 版本号: v1.0 * 对任务及求解方法的描述部分 * 输入描述:* 问题描述:* 程序输出: */
#include <iostream>using namespace std;class Vehicle{public:virtual void run() const{    cout << "run a vehicle. "<<endl;    } //(2) run()为虚函数};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;}

*运行结果:


*心得体会:、

将基类写成虚函数、这样,在后面的指针部分调用的派生类部分才会生效,。

原创粉丝点击