有如下语句
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