在C ++中使用'&'符号
这个问题在这里已经有了答案:
“&”可能意味着几种不同的事情,具体取决于上下文。
你上面给出的例子是C ++“reference operator”:
需要帮助理解特定函数中的引用操作符(C ++)
引用运算符是特定于C ++的。 “&”也可以用作C和C ++中使用的“地址”操作符:
C ++中的指针变量和引用变量之间有什么区别?
最后,“&”也可以是按位“AND”运算符:
http://www.cprogramming.com/tutorial/bitwise_operators.html
这意味着通过引用传递,传递的对象可以直接操纵。 例如,当您编写public void TestMethod(obj value)
您对值进行的任何更改都不会影响原始值(即创建副本),但是当您通过引用传递任何对值进行的更改时,都会更改原始值。
在您的问题&
符号中提供的代码用于在您的operator+
函数中通过引用传递参数。 如果你删除它,你的代码仍然可以编译,并且将以相同的方式(在你的情况下),但参数将通过值(将被复制)在你的operator+
函数中传递。