Cpp Primer–++a与a++
标签(空格分隔): Cpp
对于后缀++
int a = 1;
a = (a++)*3;//a = 4
//a++ 相当于
// int temp = a;
// a = a+1;
// return temp;
//则上面为
// a = temp*3 + 1;
//因而 a++=3为错,由于a++返回了temp,为一个右值,没有地址
对于前缀++
“`C++
int a = 1;
++a *= 3;//a = 6
//++a相当于
// a= a+1;
// return &a;
//返回为一左值,有自己的地址,不是const,那么可以赋值