令assignment操作符返回一个reference to *this

令assignment操作符返回一个reference to *this

  关于赋值,可以把它们写成连锁形式:

    int x, y, z;
    
x =y =z =15; II赋值连锁形式

  上述连锁赋值被解析2

    x = (y = (z = 15));
  
这里 15先被赋值给 Z,然后其结果(更新后的z)再被赋值给 y,然后其结果(更新 后 的 y) 再 被 赋 值 给 x。

  为了实现"连锁赋值",赋值操作符必须返回一个reference指向操作符的左侧实参。这是你为classes实现赋值操作符时应该遵循的协议: 

  

  

原文地址:https://www.cnblogs.com/tekkaman/p/3723091.html