运算符重载
Time operator+(const Time &t) const; //成员函数版本 friend Time operator+(const Time &t1, const Time &t2); // 友元版本
对于成员函数版本来说, 一个操作数通过this指针隐式传递, 另一个操作数作为参数传递。 可以理解成 : this.operator+(t)
对于友元来说,两个操作数都作为参数来传递。
例如: 假设T2+T3都满足匹配,那么
T1 = T2 + T3 会转化成下面的其中一个:
T1 = T2.operator+(T3); //成员函数版本
T1 = operator(T2 + T3);// 友元函数版本