为何迭代器前置式递增比后置式递增效率要高
来源:互联网 发布:淘宝淘抢购报名容易吗 编辑:程序博客网 时间:2024/05/22 03:44
后置式需要一个额外的临时对象,因为它必须存放迭代器的原本位置并将它返回。所以一般使用++itr,而不要使用itr++。
前置及后置代码实现:
#include <iostream>using namespace std;class UPInt {public:UPInt& operator++();// 前置式声明const UPInt operator++(int);// 后置式声明UPInt& operator+=(int);UPInt():value(0) {}public:int value;};UPInt& UPInt::operator+=(int i){value += i;return *this;}// 前置式实现UPInt& UPInt::operator ++(){*this += 1;return *this;}// 后置式实现const UPInt UPInt::operator ++(int){UPInt oldValue = *this;// 对原值进行了复制,性能较差++(*this);return oldValue;}int _tmain(int argc, _TCHAR* argv[]){UPInt up;cout << up.value << endl;cout << (up++).value << endl;cout << (++up).value << endl;return 0;}
0 0
- 为何迭代器前置式递增比后置式递增效率要高
- 迭代器前置式递增比后置式递增效率要高
- C++前置式递增和后置式递增的区别
- 前置递增和后置递增
- 前置++为什么比后置++效率高
- 前置++为什么比后置++效率高
- 为什么前置++比后置++的效率高
- 前置++为什么比后置++效率高
- 前置++为什么比后置++效率高
- 关于前置式递增和后置式递增的小知识(++x与x++)
- C++前置式递增++i和后置式递增i++的区别
- 前置递增和后置递增的区别
- 前置式递增
- 游戏效率优化(1) 前置递增与后置递增区别
- C++前置式后置式递增和复合赋值操作符对程序性能
- 前置++为什么比后置++效率更高?
- 为什么自增(increment)运算符的 前置(prefix) 比 后置(postfix) 效率高?
- 为什么自增(increment)运算符的 前置(prefix) 比 后置(postfix) 效率高?
- ant 打包可执行jar包
- C# 中 Process.Start() 方法
- 科目三要注意的失误点
- firefox 应用开发 (3) 在线安装
- 使用Vitamio打造自己的Android万能播放器(1)——准备
- 为何迭代器前置式递增比后置式递增效率要高
- 关于shell调用matlab的一些注意事项么么哒
- JAVA学习笔记-函数的复写(override)
- 《Java程序员面试笔试宝典》之为什么需要public static void main(String[] args)这个方法
- 会车有哪些要领?
- Javascript的一些小知识点
- CocoChina版主的收藏,转到这里,方便以后自己看看
- HashMap实现原理分析
- java 并发编程---安全共享对象策略