Luc*_*Luc 1 language-agnostic increment
为什么这不可能?
int c = 0;
++c++;
Run Code Online (Sandbox Code Playgroud)
或者在PHP中:
$c = 0;
++$c++;
Run Code Online (Sandbox Code Playgroud)
我希望它将变量c递增2,或者做一些奇怪的事情,但是编译时会出错.我试图提出一个理由,但没有真正得到......我的推理是这样的:
我并不是真的希望使用它,当然不是仅仅用于一次性使用的代码,但我只是好奇.
出于同样的原因你不能这样做:
c++ = 5;
Run Code Online (Sandbox Code Playgroud)
它返回一个值,该值不能修改也不能分配给.这也不是运行时错误 - 这是编译错误.(像这个.)
返回引用也没有意义,因为那样:
$a = 1;
$b = $a++; // How can it be a reference if b should be 1 and a should be 2?
Run Code Online (Sandbox Code Playgroud)