可能重复:
C++ STL: Which method of iteration over a STL container is better?
Efficiency of vector index access vs iterator access
假设名为std::vector<int>
的{{1}},以下哪项更快?
numbers
或..
for (vector<int>::iterator i = numbers.begin(); i != numbers.end(); i++)
cout << *i;
哪一个更快?有什么重大差异吗?
答案 0 :(得分:1)
任何差异都取决于硬件和编译器,因此您必须进行测量。除了使用非优化编译器的外来硬件之外,我预计没有显着差异。
当然,IO可能远远超过循环开销。
答案 1 :(得分:1)