用C++编写一个时间间隔类Time,包含hour、minute两个私有变量。编写Time类两个构造函数,一个不带任何参数,另一个包含两个参数用于初始化hour、minute。 2.编写成员函数Display用于显示成员变量值。 3.编写一个间隔分钟类Mins(小时恒为0),公有继承Time类,编写对应的构造函数。 4.编写主程序,创建两个派生类对象,并分别调用显示函数,显示对象信息。 5.编写基类成员函数重载==运算符函数,实现对应时间的==运算。在主程序中利用上面创建的两个对象测试所编写的运算符重载函数。
时间: 2024-03-10 20:50:23 浏览: 96
好的,我会根据您的要求回答您的问题。关于您的问题,以下是C++代码实现:
```c++
#include<iostream>
using namespace std;
class Time
{
private:
int hour;
int minute;
public:
Time():hour(0),minute(0){}
Time(int h, int m):hour(h),minute(m){}
void Display()
{
cout<<"Time: "<<hour<<":"<<minute<<endl;
}
bool operator==(const Time& t)
{
return (hour==t.hour && minute==t.minute);
}
};
class Mins : public Time
{
public:
Mins(int m):Time(0,m){}
};
int main()
{
Time t1(1,30);
Mins m1(60);
t1.Display();
m1.Display();
if(t1==Time(1,30))
cout<<"t1 is equal to Time(1,30)"<<endl;
return 0;
}
```
这段代码实现了一个`Time`类和一个继承自`Time`类的`Mins`类,`Time`类有两个构造函数,一个默认构造函数和一个带参数的构造函数用于初始化`hour`和`minute`成员变量。`Time`类还有一个`Display`函数用于显示时间。`Mins`类仅包含一个带参数的构造函数用于初始化`minute`成员变量,`hour`成员变量恒为0。
在`main`函数中,我们创建了一个`Time`类对象`t1`和一个`Mins`类对象`m1`,并分别调用了它们的`Display`函数,输出了它们的时间信息。之后,我们对`t1`和另一个`Time`类对象`Time(1,30)`进行了`==`运算符的重载,如果相等,则输出一条信息。
希望这个代码可以帮到您!
阅读全文