sjk1996 2016-05-27 09:18 采纳率: 0%
浏览 2190

运算符重载的this指针问题

class String{
public:
string& operator =(string & str)
{
len =str.len;
…;
return *this;
}

private:

}
int main ( )
{
string s1("123"),s2;
s2=s1;
return0;
}
老师说s1=s2等价于s1.operator=(s2),那么operator函数里面已经对s1的私有数据成员赋值了,为什么还要返回this指针,这不是多此一举吗?

  • 写回答

5条回答 默认 最新

  • fingerecho 2016-05-27 09:21
    关注

    等号赋值运算符函数必须返回*this

    评论

报告相同问题?