int i=0,j;
j=i++;
cout<<"使用後自增操作符後j="<<j<<endl;
cout<<"使用後自增操作符後i="<<i<<endl;
j等於i++的返回值,可以看出在使用後自增操作符之後,j=0;而i自身加一,即i=1;
int i=0,j;
j=++i;
cout<<"使用前自增操作符後j="<<j<<endl;
cout<<"使用前自增操作符後i="<<i<<endl;
使用前自增操作符之後的結果如下圖:
j依舊等於++i的返回值,可以看出使用前自增操作符後,得到的返回值爲i加一之後的結果。同時i自身也加一。
所以i++和++i的最大區別在於,i++會產生一個對象來裝載自加前的值並將它返回。並且i自身加一。但是++i不會產生臨時對象來裝載自加前的值,
而是直接將i進行自加,然後將自加後的值直接返回。