首先11.7
#ifndef MYTIME_H_
#define MYTIME_H_
class Time
{
private:
int hours;
int minutes;
public:
Time();
Time(int h, int m = 0);
void AddMin(int h = 0, int m = 0);
void AddHr(int h);
void Reset(int h = 0, int m = 0);
Time operator+(const Time &t)const;
Time operator-(const Time &t)const;
Time operator*(double t)const;
void Show()const;
};
#endif
其次
#include “stdafx.h”
#include
#include “mytime.h”
Time::Time()
{
hours = minutes = 0;
}
Time::Time(int h, int m)
{
hours = h;
minutes = m;
}
void Time::AddMin(int h, int m)
{
minutes += m;
hours += minutes / 60;
minutes %= 60;
}
void Time::AddHr(int h)
{
hours += h;
}
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;
}
Time Time::operator-(const Time & t) const
{
Time diff;
int tot1, tot2;
tot1 = t.minutes +60* t.hours;
tot2 = minutes + 60 * hours;
diff.minutes = (tot2 - tot1) % 60;
diff.hours = (tot2 - tot1) / 60;
return diff;
}
Time Time::operator*(double mult) const
{
Time result;
long totalminutes = hoursmult * 60 + minutesmult;
result.hours = totalminutes / 60;
result.minutes = totalminutes % 60;
return result;
}
void Time::Show() const
{
std::cout << hours << “hours,” <<minutes<<“minutes ,” ;
}
最后
// 11月192.cpp: 定义控制台应用程序的入口点。
//
#include “stdafx.h”
#include
#include “mytime.h”
using namespace std;
int main()
{
using std::cout;
using std::endl;
Time planning;
Time weeding(4,35);
Time waxing(2,47);
Time total,adjust,diff;
cout << “weeding time =”;
weeding.Show();
cout << endl;
cout << “waxing time =”;
waxing.Show();
cout << endl;
cout << “weeding +waxing =”;
total = weeding + waxing;
total.Show();
cout << endl;
cout << “weeding -waxing =”;
diff = weeding - waxing;
diff.Show();
cout << endl;
cout << “total *1.5 =”;
adjust = total * 1.5;
adjust.Show();
cin.get();
return 0;
}