STL迭代器
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 以下内容大多来自《C++标准程序库》 迭代器是一个“可遍历STL容器内全部或部分元素”的对象,一个迭代器用来指出容器中的一个特定位置。 基本操作: (1)Operator * :返回当前位置上的元素值 (2)Operator ++:将迭代器前进至下一个元素,大多数迭代器还可以使用operator -- 退回到前一个元素 (3)Operator ==和Operator != 判断两个迭代器是否指向同一个位置 (4)Operator = 为迭代器赋值 这些操作与操作数组元素时的指针接口是一致的,不同在于迭代器具有遍历复杂数据结构的能力,其下层运行机制取决于其所遍历的数据结构,因此,每一种容器型别都必须提供自己的迭代器。事实上每一种容器都将其迭代器以嵌套方式定义于内部,因此各种迭代器的接口相同,型别却不相同。 重要函数 所有容器类别都提供有一些成员函数,使我们得以获得迭代器并一直遍访所有元素。 begin() 返回一个迭代器,指向容器起始点的位置 end() 返回一个迭代器,指向容器结束点。结束点在最后一个元素之后,这样的迭代器又称作逾尾(past-the-end)迭代器(所以遍历的时候都是判断!=end()) #include <iostream> #include <list> using namespace