Description
不同交通工具的速度是不同的。针对自行车、摩托车和汽车分别建立类,来模拟这一情况。
定义Vechicle类,是所有交通工具的父类:
-
属性int speed表示交通工具的一般速度。
-
静态数据成员int numOfVechicles,表示创建的交通工具的数量。这个值只增不减。
-
静态成员函数int getNumOfVechicles(),用于获取交通工具的数量。
-
析构函数。输出“A vechicle is deleted.”
-
纯虚函数void show().
定义Bike、MotoBike和Car三个类,它们都是Vechicle的子类,且具有:
-
构造函数。
-
重写show()函数,输出“A *'s speed is ? km/h.”,其中“*”是bike、motobike或car,根据所在类不同而不同。“?”是speed属性的值。
-
析构函数。输出“A * is deleted.”,“*”的含义同上。
定义Person类,表示司机:
-
数据成员string name,是人的姓名。
-
void drive(Vechicle&)方法,输出“$ drives”, 并调用Vechicle类的show()方法。其中“$”是name的值。
Input
第1行N>0