您的位置:首页 > 编程语言 > C语言/C++

6.区别increment/decrement操作符的前置和后置形式

2015-02-26 15:46 691 查看
        
    常见的前置和后置形式有++,在重载前置和后置的++时,为了区分后置的++调用的operator++(0),而前置的则没有0: operator++()。
   前置后置重载函数的返回对象应该为const,因为要防止i++++;这样的语句出现,相当于调用了i.operator().operator(),第二个opertator所改变的对象是第一个operator返回的对象,而不是原对象。
也就是说int i = 0; i++++; 后i还是1。
   相较于前置式和后置式的重载函数,后置式相对而言效率会更低,因为后置式需要产生一个对象来存储原对象的值,然后再返回原对象的值,这样一来就发生了构造、析构和赋值函数。
    
    总结:所以非必要的情况下尽量用前置式来处理数据。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++ More Effective C++
相关文章推荐