设计一个时间类(Time),数据成员包括时(m_hour)和分(m_minute),要求根据火车的出发时间和到达时间,计算整个旅途所花费的时间。
时间: 2024-02-06 10:02:30 浏览: 35
以下是C++代码实现:
```cpp
#include <iostream>
using namespace std;
class Time {
public:
Time(int hour = 0, int minute = 0) {
m_hour = hour;
m_minute = minute;
}
Time operator+(const Time& t) const {
int hour = m_hour + t.m_hour;
int minute = m_minute + t.m_minute;
if (minute >= 60) {
hour++;
minute -= 60;
}
return Time(hour, minute);
}
int operator-(const Time& t) const {
int hour = m_hour - t.m_hour;
int minute = m_minute - t.m_minute;
if (minute < 0) {
hour--;
minute += 60;
}
return hour * 60 + minute;
}
private:
int m_hour;
int m_minute;
};
int main() {
Time depart(8, 0); // 出发时间为8:00
Time arrive(10, 30); // 到达时间为10:30
Time travel_time = arrive - depart; // 计算旅途所花费的时间
cout << "Travel time: " << travel_time << endl;
return 0;
}
```
在Time类中,我们重载了加法运算符和减法运算符,分别用于计算两个时间之和和两个时间的差。在计算两个时间之和时,需要注意进位,而在计算两个时间的差时,需要注意借位。最后,在main函数中,我们创建了出发时间和到达时间,并计算了它们之间的旅途所花费的时间。