如新建一个A类,重载operator=
A & A::operator=(const A &b){
if(/*不满足要求*/){
//拷贝失败
return ; //此处应返回什么?
}
//若满足要求,则拷贝
this->val1 = b.val1;
this->val2 = b.val2;
//.....
}
如代码所示,在拷贝之前进行判断。若无法拷贝,应该返回什么?
返回NULL或者抛异常
如新建一个A类,重载operator=
A & A::operator=(const A &b){
if(/*不满足要求*/){
//拷贝失败
return ; //此处应返回什么?
}
//若满足要求,则拷贝
this->val1 = b.val1;
this->val2 = b.val2;
//.....
}
如代码所示,在拷贝之前进行判断。若无法拷贝,应该返回什么?
返回NULL或者抛异常