C++ Iterator 库 - inserter
描述
它构造了一个插入迭代器,将新元素插入到 x 中从它指向的位置开始的连续位置。
声明
以下是 std::inserter 的声明。
C++11
template <class Container, class Iterator> insert_iterator<Container> inserter (Container& x, Iterator it);
参数
x − 它是一个容器,迭代器将在其上插入新元素。
返回值
它返回一个 insert_iterator 将元素插入到 x 所指示的位置。
异常
如果 x 在应用一元 operator& 时以某种方式抛出; 对它来说,这个函数永远不会抛出异常。
时间复杂度
随机访问迭代器的常量。
示例
以下示例显示了 std::inserter 的用法。
#include <iostream> #include <iterator> #include <list> #include <algorithm> int main () { std::list<int> foo,bar; for (int i = 1; i <= 5; i++) { foo.push_back(i); bar.push_back(i*5); } std::list<int>::iterator it = foo.begin(); advance (it,3); std::copy (bar.begin(),bar.end(),std::inserter(foo,it)); std::cout << "foo contains:"; for ( std::list<int>::iterator it = foo.begin(); it!= foo.end(); ++it ) std::cout << ' ' << *it; std::cout << '\n'; return 0; }
让我们编译并运行上面的程序,这将产生以下结果 −
foo contains: 1 2 3 5 10 15 20 25 4 5