虽然与++
运营商玩弄,我试着写:++(或 - )运算符返回什么?
++i++;
我预计在第一编译,但我得到一个编译器错误:
The operand of an increment or decrement operator must be a variable, property or indexer.
然后我试着写++(i++)
以帮助编译器理解我的意思,但它也(不出所料)不起作用。
所以我想知道++
运算符返回什么?随着编译器错误我得到我期待++i
有来无回代表i
增加值的int
,但也并非如此,因为我可以做i = (++i) + 1
成功...
任何人有任何想法,为什么++
运营商不能链接?
另外,(++i).GetType()
的确返回System.Int32
。
你应该看看C++运算符重载说不定就会搞清楚http://stackoverflow.com/questions/4421706/operator-overloading –
只是好奇,确实(++我)++编译?我没有VS在我面前,所以我无法检查。 – RLH
不,它不。因为'++ i'返回的值是递增的,而不是变量本身。 (从我刚刚学到的:P) – Bun