<iterator>

定义迭代器原始、预定义的迭代器和流迭代器,以及几个支持的模板。 预定义的迭代器包括插入和反向适配器。 具有插入迭代器适配器三选件类:前面、返回和"常规"。 它们提供插入语义而不是容器成员函数迭代器提供的复盖语义。

#include <iterator>

备注

迭代器是指针的泛化,提取从其要求用允许c. C++程序与不同的数据结构时可使用一种统一的方式的方法。 迭代器为容器和泛型算法之间的中间。 而不是对特定数据类型,算法定义对迭代器的类型指定的范围。 满足迭代的要求的任何数据结构可以由算法然后对。 具有迭代器,每个实例有自己的一组要求和生成的功能五个类型或类别:

  • 输出:向之前十六进制,可以存储,但不检索值,假定由ostream和插件。

  • 输入:向之前十六进制,可以检索,但不存储值,假定由istream。

  • 向前:向之前十六进制,可以存储和检索值。

  • 双向:前滚和后滚,可以存储,并检索值,假定列表,设置,多个集、映射和基于。

  • 随机访问:按任意顺序访问的元素,可以存储和检索值,假定由向量、、向量、双端队列、字符串和数组。

迭代器访问权限更高的要求和因此更强大中的元素可以在迭代器位置使用较少要求。 例如,因此,如果仅向前迭代器调用为,那么一个随机访问迭代器中可以使用。

k3tf6509.collapse_all(zh-cn,VS.110).gif函数

事先

通过位置指定数目的增加迭代器。

back_inserter

创建可插入元素在指定的容器的返回一个迭代。

begin

检索迭代器到一个指定容器的第一个元素。

距离

确定数目有所增加在两个迭代器解决的位置之间的。

end

检索迭代器到按照指定的容器的最后一个元素的元素。

front_inserter

创建可插入元素位于指定容器的前面迭代器。

插件

添加到容器中指定的一个新元素的迭代器适配器点插入。

make_move_iterator

返回包含提供的迭代器的移动迭代器,它存储的基本迭代器。

接下来

重复指定次数并返回新的迭代器位置。

prev

在播放重复指定次数并返回新的迭代器位置。

k3tf6509.collapse_all(zh-cn,VS.110).gif运算符

运算符! =

如果在运算符左侧的迭代器对象与右侧,的迭代器对象不相等测试。

operator==

如果在运算符左侧的迭代器对象与右侧,的迭代器对象相等测试。

operator<

如果在运算符左侧的迭代器对象与右侧,的迭代器对象小于测试。

operator<=

如果在运算符左侧的迭代器对象小于或等于右侧,的迭代器对象测试。

operator>

如果在运算符左侧的迭代器对象与右侧,的迭代器对象。测试。

operator>=

如果在运算符左侧的迭代器对象大于或等于右侧,的迭代器对象测试。

operator+

向迭代器的偏移量并返回新 reverse_iterator 解决该插入的元素在新的偏移位置。

运算符

从另一个数中减去一迭代器并返回该差异。

k3tf6509.collapse_all(zh-cn,VS.110).gif

back_insert_iterator

模板选件类描述了输出迭代器对象。 它将元素插入到一个容器类型中 Container,它通过访问受保护的 pointer 对象存储称为容器。

bidirectional_iterator_tag

iterator_category 功能提供一个返回类型表示一双向迭代器的选件类。

checked_array_iterator

选件类访问使用随机访问,经过检查的迭代器的数组。

forward_iterator_tag

iterator_category 功能提供一个返回类型表示仅向前迭代器的选件类。

front_insert_iterator

模板选件类描述了输出迭代器对象。 它将元素插入到一个容器类型中 Container,它通过访问受保护的 pointer 对象存储称为容器。

input_iterator_tag

iterator_category 功能提供一个返回类型表示输入迭代器的选件类。

insert_iterator

模板选件类描述了输出迭代器对象。 它将元素插入到一个容器类型中 Container,它通过访问受保护的 pointer 对象存储称为容器。 它还存储保护的 iterator 对象,选件类 Container::iterator,调用 iter

istream_iterator

模板选件类描述输入迭代器对象。 它输入流提取选件类 Ty 对象,它通过对象访问该存储区,类型的指针。basic_istream<ElemTr>。

istreambuf_iterator

模板选件类描述输入迭代器对象。 它选件类 Elem 的将元素插入到输出流缓冲区中,它通过对象访问该存储区,类型 pointerbasic_streambuf<ElemTr>。

迭代器

模板选件类用作基类型为所有迭代器。

iterator_traits

提供与其他迭代器的关键类型的模板帮助器选件类类型,以便可以象引用。

move_iterator

move_iterator 对象存储类型 RandomIterator一个随机访问迭代器。 它的行为与一个随机访问迭代器,除此之外,时,取消引用。 operator* 的结果被隐式转换为 value_type&;AMP_amp;: 进行 rvalue reference

ostream_iterator

模板选件类描述了输出迭代器对象。 它选件类 *** 类型 *** 对象插入到输出流中,它通过对象访问该存储区,类型 pointerbasic_ostream<ElemTr>。

ostreambuf_iterator选件类

模板选件类描述了输出迭代器对象。 它选件类 Elem 的将元素插入到输出流缓冲区中,它通过对象访问该存储区,类型的指针。basic_streambuf<ElemTr>。

output_iterator_tag

iterator_category 功能提供一个返回类型表示输出迭代器的选件类。

random_access_iterator_tag

iterator_category 功能提供一个返回类型表示一个随机访问迭代器的选件类。

reverse_iterator

模板选件类在扫描仅描述的行为与一个随机访问迭代器的对象,这些对象。

请参见

参考

线程安全性对标准C++库中

标准模板库

其他资源

标头文件