单独的写没有区别,
int i=1;
int a=i++;
int b=++i;
输出 a==1,b==2;
根本区别是语义上的区别,这个书上有,一个返回+之后的值一个返回+之前的值。
如果没有用到返回值的话,区别在于效率。
- 若i是内置的数值类型,两者完全一样
- 若i是一些自定义的类,如iterator,++i的效率 > = i++的效率
int i = 1; int sum = 0; sum = sum + i; //这个意思 sum += i; //这是简写
单独的写没有区别,
int i=1;
int a=i++;
int b=++i;
输出 a==1,b==2;
根本区别是语义上的区别,这个书上有,一个返回+之后的值一个返回+之前的值。
如果没有用到返回值的话,区别在于效率。
int i = 1; int sum = 0; sum = sum + i; //这个意思 sum += i; //这是简写