如何在这里使用逗号运算符?

see*_*ker 4 c++ comma-operator

可能重复:
C++逗号运算符
使用C逗号运算符

我不是C++的新手,但这是我第一次看到以下代码:

int a=0;
int b=(a=2,a+1);
Run Code Online (Sandbox Code Playgroud)

那是C++代码.你能告诉我这里发生了什么吗?变量b如何得到值3?

Cod*_*ash 12

这段代码相当于:

int a = 2 ; 
int b = a + 1 ;
Run Code Online (Sandbox Code Playgroud)

将评估逗号左侧的第一个表达式,然后评估右侧的表达式.最右边表达式的结果存储在=符号左侧的变量中.

查找逗号运算符以获取更多详细信息.

http://en.wikipedia.org/wiki/Comma_o​​perator