题解 | #加号运算符重载#
加号运算符重载
https://www.nowcoder.com/practice/b9e27fcf61fc4013875409ed78e0960b
//注意小时和分钟都有上限,并且分钟到达上限要进位
#include <iostream>
using namespace std;
class Time {
public:
int hours; // 小时
int minutes; // 分钟
Time() {
hours = 0;
minutes = 0;
}
Time(int h, int m) {
this->hours = h;
this->minutes = m;
}
void show() {
cout << hours << " " << minutes << endl;
}
// write your code here......
Time operator+(Time t2)
{
Time temp;
temp.hours=this->hours+t2.hours;
if(temp.hours>=24)
temp.hours-=24;
temp.minutes=this->minutes+t2.minutes;
if(temp.minutes>=60)
{
temp.hours++;
temp.minutes-=60;
}
return temp;
}
};
int main() {
int h, m;
cin >> h;
cin >> m;
Time t1(h, m);
Time t2(2, 20);
Time t3 = t1 + t2;
t3.show();
return 0;
}
