首页 > 其他 > 详细

条款10:令operator=返回一个*this的引用

时间:2015-05-26 14:07:58      阅读:227      评论:0      收藏:0      [点我收藏+]

为了编程的简洁性,有时候需要串联赋值,如:x = y = z = 15; 由于赋值采用右结合,因此上述语句被解释为:x = (y = (z = 15));

为了实现串联赋值,复制操作符函数必须返回一个指向操作符左侧实参的的引用,如下:

 1 class Widget
 2 {
 3 public:
 4     ...
 5     Widget& operator=(const Widget& rhs)
 6     {
 7     ...
 8     return *this;
 9     }
10     ...
11 };

 

注意:

这个规则不仅适用于赋值 = ,对于其他操作符如 += 、 -= 等同样适用。

 

条款10:令operator=返回一个*this的引用

原文:http://www.cnblogs.com/benxintuzi/p/4530446.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!