C++ Iterators17 Mar 2025 | 5 分钟阅读 迭代器就像指针一样,用于访问容器元素。 重要提示
语法对迭代器执行的操作
迭代器与指针的区别迭代器可以是智能指针,允许迭代复杂的数据结构。容器提供其迭代器类型。因此,我们可以说迭代器与不同的容器类型具有相同的接口。 容器类提供了两个基本的成员函数,允许迭代或遍历容器中的元素
![]() 让我们看一个简单的例子 输出 1 2 3 4 5 迭代器类别迭代器可以按以下方式分类
![]() 输入迭代器: 输入迭代器是用于访问容器中元素的迭代器,但它不修改容器的值。 输入迭代器使用的运算符是
输出迭代器: 输出迭代器是用于修改容器值的迭代器,但它不从容器中读取值。因此,我们可以说输出迭代器是一个**只写迭代器**。 输出迭代器使用的运算符是
前向迭代器: 前向迭代器是用于读写容器的迭代器。它是一个多趟迭代器。 前向迭代器使用的运算符是
双向迭代器: 双向迭代器支持前向迭代器的所有功能,并且它增加了一个功能,即递减运算符(--)。我们可以通过递减迭代器向后移动。 双向迭代器使用的运算符是
随机访问迭代器: 随机访问迭代器是提供对任意位置元素随机访问的迭代器。它具有双向迭代器的所有功能,并且它增加了一个功能,即指针加法和指针减法,以提供对元素的随机访问。 迭代器的提供者
迭代器及其特性
迭代器的缺点
迭代器的优点迭代器具有以下优点
让我们看一个简单的例子 输出 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 10 1 2 3 4 5 10 在上面的示例中,我们观察到如果不用迭代器遍历向量元素,则需要跟踪容器中添加的元素数量。
让我们看一个简单的例子 输出 1 10 2 3 4 5 在上面的示例中,我们使用 insert() 函数在第二个位置插入一个新元素,所有其他元素都向后移动一个位置。 随机访问迭代器与其他迭代器的区别随机访问迭代器与其他迭代器最重要的区别是,**随机访问迭代器需要“1”步访问一个元素,而其他迭代器需要“n”步**。 ![]() 下一主题C++ 教程 |
前向迭代器是双向迭代器和随机访问迭代器的组合。因此,我们可以说前向迭代器可以用于读写容器。前向迭代器用于从容器的开始到结束读取内容。前向迭代器...
阅读 3 分钟
C++ 双向迭代器 双向迭代器支持前向迭代器的所有功能,并且它还支持两个递减运算符(前缀和后缀)。双向迭代器是用于在两个方向(即朝向结束和朝向开始)访问元素的迭代器。一个随机...
阅读 3 分钟
输出迭代器是用于修改容器中值的迭代器。解引用输出迭代器允许我们更改容器的值。它不允许我们从容器中读取值。它是一个单向只写迭代器。它可以递增,但...
阅读 4 分钟
输入迭代器是用于从容器中读取值的迭代器。解引用输入迭代器允许我们从容器中检索值。它不改变容器的值。它是一个单向迭代器。它可以递增,但不能递减。可以使用的运算符...
阅读 3 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India