//
// Created by 刘彪 on 2020/3/3.
//多态性与虚函数 P263 例8,48 交通工具类Vehicle
#include <iostream>
#include <cstring>
using namespace std;
class Vehicle{
public:
virtual void showinfo()=0;
protected:
char Name[20];
};
class Car:public Vehicle{
public:
Car(char *name){
strcpy(Name,name);
}
void showinfo(){
cout<<Name<<endl;
}
protected:
int Radius;
};
class Truck:public Vehicle{
public:
Truck(char *name){
strcpy(Name,name);
}
void showinfo(){
cout<<Name<<endl;
}
};
class Boat:public Vehicle{
public:
Boat(char *name){
strcpy(Name,name);
}
void showinfo(){
cout<<Name<<endl;
}
};
int main(){
Vehicle *vp;
Car car("奔驰");
Truck truck("运输卡车");
Boat boat("游艇");
vp = &car;
vp->showinfo();
vp=&truck;
vp->showinfo();
vp=&boat;
vp->showinfo();
}