100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 递增递减运算符 详解(++ --)

递增递减运算符 详解(++ --)

时间:2023-02-16 21:46:12

相关推荐

递增递减运算符 详解(++ --)

作用

递增运算符(++)和递减运算符(--)为对象的加1和减1操作提供了一种简洁的书写形式,这两个运算符还可以应用于迭代器,因为很多迭代器本身不支持算术运算符,所以此时递增和递减运算符除了书写简洁以外还是必须的。

形式

递增递减运算符有两种形式:前置版本(++i)和后置版本(i++)。

前置版本形式的运算符首先将运算对象加1(或减1)然后将改变后的对象作为求值结果。

后置版本形式的运算符也会将运算对象加1(或减1)但是求值结果是运算对象改变之前那个副本

代码

int i = 0,j; //定义两个int变量,i赋初值为0,j暂不赋值j = ++i; //j = 1,i = 1: 前置版本,先将i进行加1操作,在对j进行赋值j = i++; //j = 1,i = 2: 后置版本,(此时j = 1,i = 1)先对j进行赋值,再对i进行加1操作

注意

这两种运算符必须作用于左值运算对象。前置版本将对象本身作为左值返回,后置版本则将对象原始值的副本作为右值返回。

不理解左值右值的可以参考:理解C和C++中的左值和右值_xuwqiang1994的博客-CSDN博客_左值和右值

建议

除非必需,否则不建议使用后置版本

原因:前置版本的递增运算符避免了不必要的工作,它把值加1后直接返回,改变了运算对象。运与之相比,后置版本需要将原始值存储下来以便于返回这个未修改的内容。如果我们不需要修改前的值,那么后置版本的操作就是一种浪费(迭代器中尤其明显)。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。