程式的頭檔案Time.h
#ifndef TIME_H_
#define TIME_H_
class Time
{
public:
Time();
Time(int h, int m = 0);
void add_hour(int h);
void add_minute(int m);
void reset(int h = 0, int m = 0);
Time operator+ (const Time & t) const;
void display() const;
private:
int hours;
int minutes;
};
#endif
類方法實作檔案Time.cpp
#include <iostream>
#include "Time.h"
using namespace std;
Time::Time()
{
hours = minutes = 0;
}
Time::Time(int h, int m)
{
hours = h;
minutes = m;
}
void Time::add_hour(int h)
{
hours += h;
}
void Time::add_minute(int m)
{
minutes += m;
// hours += minutes / 60;
add_hour(minutes / 60);
minutes %= minutes % 60;
}
void Time::reset(int h, int m)
{
hours = h;
minutes = m;
}
Time Time::operator+ (const Time & t) const
{
Time sum;
sum.minutes = minutes + t.minutes;
sum.hours = hours + t.hours + sum.minutes / 60;
sum.minutes %= 60;
return sum;
}
void Time::display() const
{
cout << hours << " hours " << minutes << " minutes";
}
程式的主程式main.cpp
#include <iostream>
#include "Time.h"
using namespace std;
int main()
{
Time p;
Time rest(2, 40);
Time work(5, 55);
Time total;
cout << "計劃時間是: ";
p.display();
cout << endl;
cout << "休息時間是: ";
rest.display();
cout << endl;
cout << "工作時間是: ";
work.display();
cout << endl;
total = rest + work;
cout << "總的時間是: ";
total.display();
cout << endl;
Time morerest(3, 28);
cout << "更多的休息時間是: ";
morerest.display();
cout << endl;
total = morerest.operator+(total);
cout << "又是總的時間: ";
total.display();
cout << endl;
return 0;
}
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIiclRnblN0LclHdpZXYyd2LcBzNvwVZ2x2bzNXak9CX90TQNNkRrFlQKBTSvwFbslmZvwFMwQzLcVmepNHdu9mZvwFVywUNMZTY18CX052bm9CX9smeNlXREpldkdVZ0hmMiZXUYpVd1kmYr50MZV3YyI2cKJDT29GRjBjUIF2LcRHelR3LcJzLctmch1mclRXY39DM5MjMzATN4EjMxYDM0EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)