c++ 迭代器与下标访问效率问题
来源:互联网 发布:黄金家族软件官网 编辑:程序博客网 时间:2024/06/15 03:48
今天验证下在 c++ vector 下标访问及迭代器访问的效率问题。
100W 数据存放到 vector 里。便利访问,以为打印的效率很低,所以不打印,只是访问下就 ok。
首先用迭代器的方式访问了一下。
平均时间:
real 0m0.009s
user 0m0.008s
sys 0m0.000s
int main(){ std::vector<int> vecInt(1000000,1); int value; std::vector<int>::const_iterator it = vecInt.begin(); std::vector<int>::const_iterator end = vecInt.end(); for ( ; it != end; ++it ) value = *it;// int size = vecInt.size();// for ( int j = 0; j < size; j++ )// value = vecInt[j];}
下面用下标的方式访问了下。
时间:
real 0m0.009s
user 0m0.008s
sys 0m0.000s
int main(){ std::vector<int> vecInt(1000000,1); int value;// std::vector<int>::const_iterator it = vecInt.begin();// std::vector<int>::const_iterator end = vecInt.end();// for ( ; it != end; ++it )// value = *it; int size = vecInt.size(); for ( int j = 0; j < size; j++ ) value = vecInt[j];}
实验证明效率是一样的。不知道是不是我搞错了。反正我测试的效率是一样的。
另外我试了一下 it++ 与 ++it 的执行时间也是一样的。
0 0
- c++ 迭代器与下标访问效率问题
- 数组----下标与指针效率问题
- C语言 数组 下标与指针 效率解析
- c语言数组下标问题
- py iter,yield与下标访问
- 指针与数组--指针访问与下标访问
- 数组的下标访问和指针访问方式效率分析比较
- 数组的下标访问和指针访问方式效率分析比较
- 系统并发访问效率问题
- C语言中的指针与下标
- 数组元素的访问方式—指针与下标
- ArrayList中成员访问下标与Add()\AddRange()的关系
- [js]关于闭包与访问数组下标的老生常谈
- 数组元素的访问方式—指针与下标
- go与C效率比较
- GDI+效率问题与优化
- 多线程处理与效率问题
- 方波与正弦波效率问题
- Java日志框架——日志框架配置文件的查找
- python中的shelve模块,可以提供一些简单的数据操作
- 10001---Spring MVC概述
- OC_NSNumer和NSValue
- jquery的几种ajax方式
- c++ 迭代器与下标访问效率问题
- bootstrap(组件)
- 任务管理(3.3)------嵌入式系统软件及操作系统知识
- Associative Containers
- 在python的应用程序中,不需要关系型数据库时,如MySQL可以使用python提供的持久字典dbm来存储名称和值(键值对)
- 遥感在水环境监测中的应用
- android新版本下获取屏幕宽度和高度的方法
- 初学弹窗
- poj 3620 求最大连通水池的个数(深度优先搜索)