c++ - 迭代容器时可以使用 '<' 而不是 '!=' 吗?

标签 c++ stl

我可以使用 <而不是!=当迭代容器时?

vector<int>::const_iterator iter;
for (iter = vec.begin(); iter < vec.end; ++iter)
      do_something

最佳答案

这有效,但仅适用于随机访问迭代器(或定义 operator<() 的任何其他迭代器)。

一般来说,最好使用 !=因为这保证可以工作(如果您使用标准迭代器方法)

关于c++ - 迭代容器时可以使用 '<' 而不是 '!=' 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29917517/

相关文章:

C++ STL : Why is there no upper_bound equivalent that retrieves the greatest element smaller then a specific key?

c++ - 类内不可复制

c++ - 移动 std::deque 后引用/指针是否保证有效?

c++ - 将大矩形分割成小矩形(2D 打包)

c++ - Qt 插槽参数已损坏

c++ - 是否有任何巧妙的方法可以从数组 vector 中获取指向数据的指针?

c++ - 为什么 std::generate 不像 std::for_each 那样返回状态?

c++ - GCC STL 是线程安全的吗?

c++ - 如何将 google::protobuf::Message 直接序列化到预分配内存中?

c++ - 图片/"most resembling pixel"搜索优化?