先在指派運算子中進行本身的同等檢查。
class MyClass {
public:
MyClass& operator=(const MyClass& rhs);
private:
int field;
};
MyClass& MyClass::operator=(const MyClass& rightValue)
{
if(this == &rightValue){
return *this;
}
if(rightValue.field == this.field){
return *this;
}
}
|
|