一 配接器分类
STL提供三种配接器:
(1)容器配接器(container adapter):
STL提供两个容器配接器:queue和stack,它们都是修饰deque的接口而获得的。
(2)迭代器配接器(iterator adapter):
STL提供的迭代器配接器包括:insert iterator、reverse iterator和stream iterator。
使用时需包含<iterator>头文件。其中Insert iterators和Reverse iterators定义于<bits/stl_iterator.h>中,Stream iterators定义于<bits/stream_iterator.h>头文件中。
1.inserter iterator:
所谓insert iterator:即将一般迭代器的赋值操作变为插入操作。
分为三种:
back_insert_iterator(对应函数back_inserter(container &x));
front_insert_iterator(对应函数front_inserter(container &x));
insert_iterator(对应函数inserter(container &x,Iterator i));
2 reverse iterator:
reverse iterator:将一般迭代器的前进方向进行逆转。
3 iostream iterator:
iostream iterator:可以将迭代器绑定到某个iostream对象身上。
绑定到istream对象(例如:std::cin),称为istream_iterator。
绑定到ostream对象(例如:std::cout),称为ostream_iterator。
(3)仿函数配接器(functor adapter)。(详见配接器(三))