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

类别:编程语言 点击:0 评论:0 推荐:

有如下语句

 

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;

}

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

本文地址:http://com.8s8s.com/it/it24800.htm