请设计时间类TIME,实现时间的输入、输出和比较。#include <iostream> #include <iomanip> using namespace std; /* 你提交的代码将被嵌在这里 */ int main() { TIME a, b; cin >> a >> b; if (a > b) { cout << "Yes\n"; } else { cout << "No\n"; } r
时间: 2024-01-23 07:04:10 浏览: 174
好的,下面是一个简单的时间类TIME的设计,实现了时间的输入、输出和比较功能:
```cpp
#include <iostream>
#include <iomanip>
using namespace std;
class TIME {
private:
int hour, minute, second;
public:
TIME() {
hour = minute = second = 0;
}
friend istream& operator>>(istream& in, TIME& t) {
char c;
in >> t.hour >> c >> t.minute >> c >> t.second;
return in;
}
friend ostream& operator<<(ostream& out, const TIME& t) {
out << setfill('0') << setw(2) << t.hour << ":"
<< setw(2) << t.minute << ":" << setw(2) << t.second;
return out;
}
bool operator>(const TIME& t) const {
if (hour > t.hour) {
return true;
} else if (hour == t.hour) {
if (minute > t.minute) {
return true;
} else if (minute == t.minute) {
if (second > t.second) {
return true;
}
}
}
return false;
}
};
int main() {
TIME a, b;
cin >> a >> b;
if (a > b) {
cout << "Yes\n";
} else {
cout << "No\n";
}
return 0;
}
```
在这个实现中,我们使用了重载输入输出运算符 `>>` 和 `<<`,以及重载比较运算符 `>`,实现了时间类的输入、输出和比较功能。需要注意的是,我们在输出时间时使用了 `setfill` 和 `setw` 控制输出格式,确保时间的格式为 `hh:mm:ss`。
阅读全文