拷貝構造函數和重載賦值操作符一般都是一起出現的。
拷貝構造函數:
A(const A &rhs)
{
name=rhs.name;
age=new int();
*age=*rhs.age;
}
重載賦值操作符:
A& operator = (const A &rhs)
{
delete age;
age=new int;
*age=*rhs.age;
name=rhs.name;
return *this;
}
注意在main函數中,新建一個A對象時候,A a1=a;使用的是拷貝構造函數,而A a1;a1=a;使用的纔是重載的賦值操作符。