c++高手帮个忙啊!!!!!!编个程序。

来源:百度知道 编辑:UC知道 时间:2024/06/21 21:02:25
定义一个车(vehicle)基类,有Run、Stop等成员函数,由此派生出自行车(bicycle)类、汽车(motorcar)类,从bicycle和motorcar派生出摩托车(motorcycle)类,它们都有Run、Stop等成员函数。观察虚函数的作用。

#include<iostream>
using namespace std;

class vehicle
{
public:
virtual void run(){cout<<"vehicle: run()"<<endl;}
virtual void stop(){cout<<"vehicle:stop()"<<endl;}
};

class bicycle:virtual public vehicle
{
public:
void run(){cout<<"bicycle:run()"<<endl;}
void stop(){cout<<"bicycle:stop()"<<endl;}
};

class motorcar:virtual public vehicle
{
public:
void run(){cout<<"motorcar:run()"<<endl;}
void stop(){cout<<"motorcar:stop()"<<endl;}
};

class motorcycle:public bicycle,public motorcar
{
public:
void run(){cout<<"motorcycle:run()"<<endl;}
void stop(){cout<<"motorcycle:stop()"<<endl;}
};

void print(vehicle *ptr)
{
ptr->run();