重载单目运算符的一个例子

有一个Time类,包含数据成员minute(分)和sec(秒),模拟秒表,每次走一秒,满 60秒进一分钟,此时秒又从0开始算。要求输出分和秒的值。

#include 
using namespace std;

class Time{
public:
	Time(){minute = 0; sec = 0;}
	Time(int m, int s):minute(m),sec(s){}
	Time operator ++();//前置自增
	Time operator ++(int);//后置自增
	void display(){cout<= 60){
		sec-=60;
		++minute;
	}
	return *this;
}

Time Time::operator++(int){//后置自增
	Time temp(*this);
	sec++;
	if (sec >= 60){
		sec-=60;
		++minute;
	}
	return temp;
}

int main(){
	Time time1(34,0), time2;

	cout<<"time1:";time1.display();
	++time1;
	cout<<"++time1:";time1.display();

	time2 = time1++;
	cout<<"time1++:";time1.display();

	cout<<"time2:";time2.display();
 	
	return 0;
}

你可能感兴趣的:(C++)