大家。我的问题是,在c++中,为什么赋值表达式“a =(b = 4)= 3”是正确的?我知道b = 4的返回值为4,但是为什么又可以将其赋值为3?它仍然是变量吗?谢谢。
最佳答案
b = 4
返回对b
的引用。 a=(b=4)=3
与b = 4; b = 3; a = 3;
相似。 a=(b=4)=3
的程序集是
mov dword ptr [rbp - 8], 4
mov dword ptr [rbp - 8], 3
mov dword ptr [rbp - 4], 3
你可以看到它here
关于c++ - 如何理解赋值表达式 “a=(b=4)=3”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59122220/