码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2015-05-26 14:08:12      阅读:96      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!