//// Created by Rdw on 2017/3/9.//#ifndef PROJECT5_TIME_H#define PROJECT5_TIME_H#include <ostream>#include <istream>using namespace std;
class Time {
private:
int hour;
int minute;
public:
Time();//默认构造函数
Time(int h , int m);//构造函数
~Time();//析构函数
friend ostream &operator<<(ostream &os , const Time &object);
/*重载赋值运算符*/
Time &operator=(const Time&object);
Time &operator+=(const Time&object);
};
#endif //PROJECT5_TIME_H
类的定义
//// Created by Rdw on 2017/3/9.//#include "Time.h"
Time::Time() {
}
Time::Time(int h, int m) {
hour = h;
minute = m;
}
Time::~Time() {
}
Time& Time::operator=(const Time &object) {
hour = object.hour;
minute = object.minute;
return *this;
}
Time& Time::operator+=(const Time &object) {
hour += object.hour;
minute += object.minute;
return *this;
}
ostream& operator<<(ostream &os, const Time &object) {
os << object.hour << "hour " << object.minute << "minutes" ;
os << endl;
return os;
}
类的实现
#include <iostream>#include "Time.h"usingnamespacestd;
int main() {
Time time1 = Time(19,22);
cout << time1;
Time time11 = Time(22,22);
cout << time11;
Time time2 = time1;
cout << time2;
time2 += time11;
cout << time2;
}
测试结果
E:\Project5\cmake-build-debug\Project5.exe
19hour22minutes
22hour22minutes
19hour22minutes
41hour44minutes
Process finished withexit code 0