构建一个车(vehicle)基类,包含Run、Stop两个纯虚函数。由此基类,派生出(Car)轿车类,(truck)卡车类,在这两个类中别分定义Run和Stop两个函数,每个函数中输出 car 或者 truck is running 或 stopping。主函数中,分别实例化轿车类与卡车类,并构建基类指针,分别调用两个派生类对象的Run和Stop函数。
时间: 2024-03-10 22:44:42 浏览: 97
好的,我会按照您的要求回答这个问题。以下是实现这个问题的代码:
```cpp
#include <iostream>
using namespace std;
// 定义车(vehicle)基类
class vehicle {
public:
virtual void Run() = 0; // 纯虚函数 Run
virtual void Stop() = 0; // 纯虚函数 Stop
};
// 定义轿车类(Car), 从车基类(vehicle)派生
class Car : public vehicle {
public:
void Run() override { cout << "car is running" << endl; } // 实现 Run 函数
void Stop() override { cout << "car is stopping" << endl; } // 实现 Stop 函数
};
// 定义卡车类(truck), 从车基类(vehicle)派生
class Truck : public vehicle {
public:
void Run() override { cout << "truck is running" << endl; } // 实现 Run 函数
void Stop() override { cout << "truck is stopping" << endl; } // 实现 Stop 函数
};
int main() {
vehicle *p; // 定义基类指针
Car c; // 实例化轿车类
Truck t; // 实例化卡车类
// 指向轿车类对象的指针调用 Run 和 Stop 函数
p = &c;
p->Run();
p->Stop();
// 指向卡车类对象的指针调用 Run 和 Stop 函数
p = &t;
p->Run();
p->Stop();
return 0;
}
```
以上代码就是您所需要的答案,它能够构建一个车(vehicle)基类,包含Run、Stop两个纯虚函数。由此基类,派生出(Car)轿车类,(truck)卡车类,在这两个类中别分定义Run和Stop两个函数,每个函数中输出 car 或者 truck is running 或 stopping。主函数中,分别实例化轿车类与卡车类,并构建基类指针,分别调用两个派生类对象的Run和Stop函数。
阅读全文