++i与i++性能比较

来源:互联网 发布:vb墨镜价格 编辑:程序博客网 时间:2024/06/05 15:41

自增运算符有两种形式:前缀自增运算和后缀自增运算,即我们通常所见的++i和i++两种形式。

就效率而言,一般来说前缀自增效率要高于后缀自增。

如下面代码所示:

Integer& Integer::operator++(){    *this += 1;    return *this;}const Integer Integer::operator++(int){    Integer oldValue = *this;    ++(*this);    return oldValue;}

对于int类型的自增运算,从上述代码中,我们不难看出,后缀自增运算符使用了临时Integer对象,因此其效率会低于前缀自增运算。

注:一般情况下,二者效率没有差别,因为C语言编译器会自动使其最优化。

但是在C++中,当我们对某些类重载++运算符时,还是尽量使用前缀++运算符,其效率会高于后缀++.

0 0