当前位置:  开发笔记 > 编程语言 > 正文

返回类型operator = C++

如何解决《返回类型operator=C++》经验,为你挑选了1个好方法。

我只是要澄清一下.比方说,我想覆盖operator =.根据我的阅读,这应该返回对象的参考.正如我从其他来源读到的那样,Reference只是该对象的替代名称.我可以这样做吗?

MyObject MyObject::operator =(const MyObject &o2) {
    //insert processing code here
    return *this;
}

而不是这个?

MyObject& MyObject::operator =(const MyObject &o2) {
    //insert processing code here
    return *this;
}

vsoftco.. 9

在第一种情况下,您返回的是副本*this,而不是对其的引用*this.所以你应该坚持第二种情况.这两种情况之间存在很大差异,特别是对于复制"昂贵"的类型.



1> vsoftco..:

在第一种情况下,您返回的是副本*this,而不是对其的引用*this.所以你应该坚持第二种情况.这两种情况之间存在很大差异,特别是对于复制"昂贵"的类型.

推荐阅读
php
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有