Update 重载++的时钟.cpp
修复了++的时候判断时使用if(second=60)的bug,增加了后缀形式的++重载,完善了++的返回值。
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>࣬<EFBFBD>ܹ<EFBFBD><EFBFBD><EFBFBD>¼ʱ<EFBFBD><EFBFBD><EFBFBD>֡<EFBFBD><EFBFBD>룬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>++<2B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿִ<C3BF><D6B4>һ<EFBFBD><D2BB>++<2B><><EFBFBD>㣬<EFBFBD><E3A3AC>ʱ1<CAB1>룬<EFBFBD><EBA3AC>Ҫʹ<D2AA><CAB9>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>ܹ<EFBFBD><DCB9>Զ<EFBFBD><D4B6><EFBFBD>λ<EFBFBD><CEBB>
|
设计一个时钟类,能够记录时、分、秒,重载它的++运算符,每执行一次++运算,加时1秒,但要使计时过程能够自动进位。
|
||||||
*/
|
*/
|
||||||
#include<iostream>
|
#include<iostream>
|
||||||
using namespace std;
|
using namespace std;
|
||||||
@@ -10,19 +10,24 @@ class Time{
|
|||||||
minute = m;
|
minute = m;
|
||||||
second = s;
|
second = s;
|
||||||
}
|
}
|
||||||
void operator++();
|
Time operator++();
|
||||||
|
Time operator++(int);
|
||||||
void showTime(){
|
void showTime(){
|
||||||
cout<<"<EFBFBD><EFBFBD>ǰʱ<EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD>"<<hour<<":"<<minute<<":"<<second<<endl;
|
cout<<"当前时间为:"<<hour<<":"<<minute<<":"<<second<<endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
int hour,minute,second;
|
int hour,minute,second;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
Time Time::operator++(int n){
|
||||||
void Time::operator++(){
|
Time tmp=*this;
|
||||||
|
++(*this);
|
||||||
|
return tmp;
|
||||||
|
}
|
||||||
|
Time Time::operator++(){
|
||||||
++second;
|
++second;
|
||||||
if(second=60){
|
if(second==60){
|
||||||
second=0;
|
second=0;
|
||||||
++minute;
|
++minute;
|
||||||
if(minute==60){
|
if(minute==60){
|
||||||
@@ -33,12 +38,15 @@ void Time::operator++(){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return *this;
|
||||||
}
|
}
|
||||||
|
|
||||||
int main(int argc, char const *argv[])
|
int main(int argc, char const *argv[])
|
||||||
{
|
{
|
||||||
Time t(23,59,59);
|
Time t(23,59,59);
|
||||||
++t;
|
++t;
|
||||||
|
t.showTime();
|
||||||
|
(t++).showTime();
|
||||||
t.showTime();
|
t.showTime();
|
||||||
system("pause");
|
system("pause");
|
||||||
return 0;
|
return 0;
|
||||||
|
Reference in New Issue
Block a user