一个Time类,数据成员有时、分、秒。要求模拟秒表,每次走一秒,满60秒进位,秒又从零开始计数。满60分进位,分又从零开始计数。输出时、分和秒的值。(使用重载++运算符实现)
时间类定义:
class MyTime
测试程序样例:
/* 请在这里填写答案 */ int main() { MyTime t1,t2(23,59,59),t3; cin>>t3; ++t1; cout<<t1<<endl; ++t2; cout<<t2<<endl; ++t3; cout<<t3<<endl; return 0; }
输入样例:
12 35 59
输出样例:
0:0:1
0:0:0
12:36:0
#include<iostream>
#include <string>
using namespace std;
class MyTime{
public:
MyTime(int h=0,int m=0,int s=0):hour(h),minute(m),second(s)
{
};
MyTime operator ++();
friend istream & operator >>(istream &,MyTime &);
friend ostream & operator << (ostream &, MyTime &);
private:
int hour,minute,second;
};
MyTime MyTime::operator ++()
{
second++;
if(second==60)
{minute++;second=0;}
if(minute==60)
{hour++;minute=0;}
hour%=24;
return *this;
}
istream &operator >>(istream &is ,MyTime & t)
{
is>>t.hour>>t.minute>>t.second;
return is;
}
ostream & operator<<(ostream & os,MyTime &t)
{
os<<t.hour<<":"<<t.minute<<":"<<t.second;
return os;
}