这是一个愚蠢的问题,但我被难住了。以下两个 C++ 语句是否相同?
regWages = regPay + overTime;
regPay + overTime = regWages;
最佳答案
没有。一个有效,另一个无效。 (也许。*)
您通常只能分配给左值,从同义反复的意义上讲,它们是您可以分配给的东西。算术表达式的结果通常不是您可以分配给的东西。
更简单地说:a = 1 + 2
可以,但 1 + 2 = a
不行。您可以为 a
赋值,但不能为整数相加的结果赋值。
C++ 中的赋值是一种状态改变。它与“方程式”的数学概念有很大不同。 C++ 中的赋值更像是数学中的定义,但与数学不同的是,您可以为现有对象重新赋值。
*) 运算符重载使图片有点复杂。
关于c++ - 赋值运算符,相同的语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22649209/