//单目运算符的重载 自增自减
//实现一个时间的自增函数
#include<iostream>
using namespace std;
class Time
{private:
int minute,second;
public:
Time(int x=0,int y=0)//构造函数
{
minute=x;
second=y;
}
Time operator ++();//运算符重载
void display()
{cout<<"minute:"<<minute<<" "<<"second"<<second<<endl;
}
};
Time Time::operator ++()
{
second++;
if(second>60)
{
second=second-60;
minute++;
}
return *this;
}
int main()
{
Time t;
int i;
for(i=0;i<61;i++)
{
++t;
t.display();
}
}
注意的问题及思考。
1:不用友元,在成员函数中不return *this能成功吗?答案是否定的。
2:用友元可以把参数设为自身,然后返回。
3:注意这是前增,若是后增,注意写上int参数
转载请注明原文地址: https://ju.6miu.com/read-970145.html