inserter
描述 (Description)
它构造一个插入迭代器,它在从它指向的位置开始的连续位置中将新元素插入到x中。
声明 (Declaration)
以下是std :: inserter的声明。
C++11
template <class Container, class Iterator>
insert_iterator<Container> inserter (Container& x, Iterator it);
参数 (Parameters)
x - 它是一个容器,迭代器将在其上插入新元素。
返回值
它返回一个insert_iterator,它将元素插入x所指示的位置。
异常 (Exceptions)
如果x在应用一元运算符时以某种方式抛出它,则此函数永远不会抛出异常。
时间复杂
随机访问迭代器的常量。
例子 (Example)
以下示例显示了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