i = i++;在c++和java下的不同结果。

王朝c/c++·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

有如下语句

int i = 0;

i = i++;

此时i的值是多少?

在c++和java下有着不同的结果。c++下结果是1。而在java下结果却是0。造成这种不同的根本原因恐怕是由于c++和java的设计思想不同造成的。c++是面向过程的语言,++运算符的意义是执行完当前语句之后,将目标值加1。而java是纯面向对象的。所有运算符都回被当作函数来对待。java中的++运算符和c++中重载++运算符很相似。

int operation++(int& i)

{

int temp = i;

i++;

return temp;

}

这样一来开头给出的语句的结构就很容易理解了。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航