在C#中,是否有人知道为什么以下将编译:
int i = 1;
++i;
i++;
Run Code Online (Sandbox Code Playgroud)
但这不会编译?
int i = 1;
++i++;
Run Code Online (Sandbox Code Playgroud)
(编译器错误:增量或减量运算符的操作数必须是变量,属性或索引器.)
出于同样的原因你不能说
5++;
Run Code Online (Sandbox Code Playgroud)
要么
f(i)++;
Run Code Online (Sandbox Code Playgroud)
函数返回值,而不是变量.增量运算符也返回值,但不能应用于值.