STL示例04(容器元素的插入)

//STL示例 容器元素的插入
#include <iostream>
#include <algorithm>
#include <list>
using namespace std;

int iArray[5] = { 1, 2, 3, 4, 5 };

void Display(list<int>& v, const char* s);

int main()
{
	list<int> iList;
	
	// 利用COPY函数将数组复制到LIST容器,复制的时候利用前端插入,就是每插入一个数之后,再在它前面插入
	//如插入1之后,再插入2就变成2、1
	copy(iArray, iArray + 5, front_inserter(iList));
	Display(iList, "Before find and copy");
	
	//定义list容器迭代器,并查找2来初始化迭代器(注意目前容器内容已经是5,4,3,2,1)
	list<int>::iterator p =
		find(iList.begin(), iList.end(), 2);
	
	//将数组前2个数字插入到容器,插入位置为之前找到的2的位置,插入后容器内容为5,4,3,1,2,2,1
	copy(iArray, iArray + 2, inserter(iList, p));
	Display(iList, "After find and copy");
	
	return 0;
}

void Display(list<int>& a, const char* s)
{
	cout << s << endl;
	copy(a.begin(), a.end(),ostream_iterator<int>(cout, " "));//使用空格分开容器各项
	cout << endl;
}


你可能感兴趣的:(STL示例04(容器元素的插入))