我看到下面的代码:a += b += c
- 请问,有谁知道这是什么意思?`a + = b + = c`是什么意思?
a = a + b
b = b + c
或:
b = b + c
a = a + b
我看到下面的代码:a += b += c
- 请问,有谁知道这是什么意思?`a + = b + = c`是什么意思?
a = a + b
b = b + c
或:
b = b + c
a = a + b
它只能被评价为:
a += (b += c)
如果将它作为这个评估:
(a += b) += c
然后将评估a += b
为一个数值,然后尝试更改数字价值,而不是一个变量,这是不可能的。
Ahem。这是必要的条件,但它不是唯一的条件;例如,如果'+ ='返回一个左值(并且通常是这样;'(a + = b)+ = c'是在C++中的正确语法([proof](http://codepad.org/588YbDde))) ,它的关联性是重要的。 – raina77ow
在大多数高级语言中,像这样的表达式从左到右进行求值,因为+=
是从右到左的关联。在这种情况下,c
的值被添加到b
的值,则值b
(在添加c
后)被添加到a
。
这相当于你的第二块。
1)用什么语言? 2)你尝试过吗? – Pubby
什么编程语言? – blackcatweb
这将是你的第二块。 – Shmiddty