Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
根据这个优先表,逗号运算符是左结合的。也就是说,a, b, c被解析为(a, b), c. 这是必需品吗?不会a, (b, c)有完全相同的行为吗?
a, b, c
(a, b), c
a, (b, c)
由于存在可重载operator,,不,它不是相同的行为。a, (b, c)可以调用不同的重载(a, b), c。
operator,
逗号运算符具有从左到右的关联性。用逗号分隔的两个表达式从左到右求值。总是计算左操作数,并且在计算右操作数之前完成所有副作用。
在某些情况下,逗号可以用作分隔符,例如函数参数列表。不要将逗号用作分隔符与用作运算符混淆;两种用途完全不同。
http://msdn.microsoft.com/en-us/library/zs06xbxh.aspx