编写程序声明一个车(vehicle)基类,有Run,Stop等成员函数,由此派生出自行车(motocycle)类,汽车(motocar)类,从bicyle和motocar派生出摩托车(motocycle)类,它们都有Run,Stop等成员函数.在main()函数中声明vehicle,bicyle,motocar,motocyle的对象,调用其Run(),Stop()函数,观察其执行情况.再分别用vehicle类型的指针来调用这几个对象的成员函数,看看能否运行成功;把Run,Stop声明为虚函数,再试试看.
#include <iostream>
using namespace std;
class vehicle{
public:
void virtual Run(){
cout<<"Vehicle is virtual Runing!"<<endl;
}
void virtual Stop(){
cout<<"Vehicle virtual Stopped!"<<endl;
}
};
class bicycle: public vehicle{
public:
void virtual Run(){
cout<<"bicycle is virtual Runing!"<<endl;
}
void virtual Stop(){
cout<<"bicycle virtual Stopped!"<<endl;
}
};
class motocar:virtual public vehicle{
public:
void Run(){
cout<<"motocar is virtual Runing!"<<endl;