定义
迭代器适配器是一个类模版,为标准迭代器提供一些特殊行为,从迭代器模版派生。适配器类模版定义了三种不同的迭代器:反向迭代器(reverse iterators),插入迭代器(insert iterators),移动迭代器(move iterators)。
1.反向迭代器
顾名思义,工作机制和标准迭代器相反,容器成员函数为rbegin()和rend,分别返回指向最后一个元素的反向迭代器和指向最开始元素的前一个位置的反向迭代器。
2.插入迭代器
一般迭代器只能访问或改变序列中存在的元素,但插入迭代器可能在容器的任何位置添加新元素。但不能运用在标准数组和array<T, N>这样的窗口上,因为他们的元素是固定的。
后向插入迭代器(back_insert_iterator)
前向插入迭代器(front_insert_iterator)
插入迭代器:insert_itertor
3.移动迭代器
从普通迭代器中创建,指向一定范围内的元素。将某个范围的类对象移动到目标范围,不需要通过拷贝去移动。