【发布时间】:2012-06-08 08:04:22
【问题描述】:
考虑以下 C# 代码:-
int i = 2;
i = i++;
Console.WriteLine(i);
我得到的输出是2。为什么i = i++没有效果?
【问题讨论】:
-
看它是一个令人困惑的问题(阅读采访类型)。如果 = 首先优先,然后递增意味着 i 应该是 3。如果 ++ 先优先,那么在递增之后它应该在 i 中分配 3。
-
编译成 int i = 2; int topOfStack = i;我++; i = topOfStack;
标签: c# post-increment