this指针作为临时对象的困惑
#include<iostream>using namespace std;
class Date
{
int month,day,year;
public:
Date(int m=0,int d=0,int y=0):month(m),day(d),yaer(y){}
Date operator--(int);
void display()
{cout<<year<<" "<<month<<" "<<day<<endl;}
};
Date operator--(int)
{
Date dt(*this);//等价于Date dt=*this语句,创建一个临时对象,然后调用拷贝构造函数
month--;
if(month<=0)
{month+=12;--year;}
return dt;
}
void main()
{
Date dt(12,18,2008);
Date da;
da=dt--;
cout<<"da:";
da.display();
dt.display();
}
加颜色部分我不懂,在这里,this 指针怎么用?怎么创建一个临时对象?求解答