定义一个时钟内角set time和show time声明为public对外提供两个接口over mental的寿命为project通过函数中的对象调用时间可以设置和显示时间用c++
时间: 2024-10-09 15:11:43 浏览: 70
在C++中,你可以定义一个名为`Clock`的类,这个类将包含成员变量表示时间,并提供公共(public)方法` setTime` 和 `showTime` 来设置和显示时间。为了实现多态,你可以通过虚函数(virtual functions)来创建接口,然后让派生类去覆盖这些方法。下面是一个简单的例子:
```cpp
// 基类 Clock,包含公共接口
class Clock {
public:
// 设置时间 (setTime) 和显示时间 (showTime) 的纯虚函数
virtual void setTime(int hour, int minute) = 0; // 时间通常以小时和分钟的形式表示
virtual void showTime() const = 0; // 显示当前的时间
protected:
// 子类需要实现的具体时间结构体或变量
struct Time { int hour, minute; };
// 存储时间的实例
Time currentTime;
};
// 派生类 DigitalClock 实现了 Clock 类的方法
class DigitalClock : public Clock {
public:
void setTime(int hour, int minute) override {
currentTime.hour = hour;
currentTime.minute = minute;
}
void showTime() const override {
std::cout << "Current time: " << currentTime.hour << ":" << currentTime.minute << std::endl;
}
};
// 然后在项目中通过对象调用方法
int main() {
Clock* clockInterface = new DigitalClock(); // 使用指向基类的指针引用派生类对象
clockInterface->setTime(12, 30); // 调用公共方法设置时间
clockInterface->showTime(); // 调用公共方法显示时间
delete clockInterface; // 记得释放内存
return 0;
}
```
在这个例子中,`DigitalClock`类实现了`Clock`类的`setTime`和`showTime`方法,使得我们可以在不关心实际时钟类型的情况下操作时钟。这体现了多态的概念。
阅读全文