// display vector elements using const_iterator
for (constIterator = integers.begin();
constIterator != integers.end(); ++constIterator)
cout << *constIterator << ' ';
我们可以用constIterator < integers.end()
吗?C++ - STL Vector :: const_iterator为什么不使用<xx.end()?
谢谢
您的问题标题提供了一个好评:“为什么使用'''xx.end()” - 为什么?!?当我们已经在处理迭代器时''='看起来非常好。 (与索引相反,'<'有时候是有道理的。) – 2010-11-03 20:39:00
缓存end()是一个好主意,而不是在整个循环中调用它。 – 2010-11-03 20:41:39
@Martin:我在这里看不到索引和迭代器之间的真正区别。 (基本上,他们唯一的区别在于如何访问被引用的元素。)有一个想法,创造了_defensive programming_,它倾向于'<' and '>'以上(或曾经是,我不知道发生了什么) '=='和'!='。请参阅[我的答案](http://stackoverflow.com/questions/4091380/4091557#4091557)。 – sbi 2010-11-03 20:56:02