1.++i的实现过程
int & int::operator++()
{
*this+=1;
return *this;
}
2.i++的实现过程
const int int::operator++(int)
{
int tmp = *this;
*this+=1;
return tmp;
}
这里我们可以看出++i的实现是this自加然后返回,而i++的实现则是先用一个变量保存i的原址,在进行加操作,最后返回原来的值。
在实际应用的过程中如果数据过大,每次创建变量的花销积累起来也会影响效率的。