STL之迭代器

除了为每个容器定义的迭代器之外,标准库在头文件iterator中还定义了额外几种迭代器,包括:

(1)插入迭代器(insert_iterator):被绑定到一个容器上,可用来向容器插入元素。

(2)流迭代器(stream_iterator):被绑定到输入输出流,可用来遍历所关联的IO流。

(3)反向迭代器(reverse_iterator):向后而不是向前移动,除了forward_list之外的标准库容器都有反向迭代器

(4)移动迭代器(move_iterator):不拷贝其中的元素,而是移动它们。

插入迭代器有三种类型:

(1)back_inserter:创建一个使用push_back的迭代器。

(2)front_inserter:创建一个使用push_front的迭代器。

(3)inserter:创建一个使用inserter的迭代器。此函数接受两个参数,第一个表示给定的迭代器,第二个表示要参入的元素,元素将被插入给定迭代器之前。

当创建一个流迭代器时,必须指定将要读写的对象类型,流迭代器有两种类型:

(1)istream_iterator:istream_iterator<int> int_it(cin); //从cin读取int   istream_iterator<int> int_eof;//默认初始化迭代器,即尾后迭代器


(2)ostream_iterator:


你可能感兴趣的:(STL之迭代器)