首页 > 代码库 > C++ Primer(中文第五版)学习笔记

C++ Primer(中文第五版)学习笔记

递增(++)和递减(--)运算符

递增和递减运算符有两种形式:前置版本和后置版本,经常在面试的基础题中出现。

前置版本:先将运算对象加1(或减1),然后将改变后的对象作为求值结果;

后置版本:也将运算对象加1(或减1),但是求值结果是运算对象改变之前的那个值得副本,我们通过下面的代码比较:

int i = 0;
int j = 0;
j = ++i;
cout << "j="<<j <<"\t"<< "i="<<i<<endl;// j=1   i = 1
j = i++;
cout << "j="<<j <<"\t"<< "i="<<i<<endl;// j=1   i = 2

 

除非必须,否则不用递增减运算符的后置版本

前置版本的递增减运算符避免了不必要的工作,它把值加1(或减1)后直接返回改变了的运算对象,而后置版本需要将原始值存储下来以便于返回这个未修改的内容。

如果不需要修改前的值,那么后置版本的操作就是一种浪费。