加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

C函数返回值作为参考并返回* this

发布时间:2020-12-16 10:28:09 所属栏目:百科 来源:网络整理
导读:如果我想从类成员函数返回“this”作为引用,这段代码是否正确? Record operator=(const Record that) { m_name = that.m_name; return *this;} 我不应该只使用“归还”吗? 感谢帮助 :) 解决方法 是的,这是对的. 返回这不起作用,因为这是一个指针. (它是一
如果我想从类成员函数返回“this”作为引用,这段代码是否正确?

Record& operator=(const Record& that) {
    m_name = that.m_name;
    return *this;
}

我不应该只使用“归还”吗?

感谢帮助 :)

解决方法

是的,这是对的.

返回这不起作用,因为这是一个指针. (它是一个指针而不是引用的原因是因为引用在类之后才被引入语言.)

在这种特定情况下,如果您只是要分配成员,则不应编写复制赋值运算符;默认情况也是如此.当您管理某些资源(并调用Rule of Three)时,您需要使用copy-and-swap idiom.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读