STL示例10(advance及distance使用)

来源:互联网 发布:制作文字图片的软件 编辑:程序博客网 时间:2024/05/29 19:54
//STL示例 advance及distance#include <iostream>#include <list>#include <algorithm> //find use#include <iterator>using namespace std;int iArray[5] = { 1, 2, 3, 4, 5 };void Display(list<int>& a, const char* s);int main (){list<int> iList;list<int>::iterator p=iList.begin();//定义迭代器并指向容器开始copy(iArray, iArray + 5, inserter(iList,p));//从开头一个个插入元素//copy(iArray, iArray + 5, front_inserter(iList));//前端插入Display(iList,"插入后:");p =find(iList.begin(), iList.end(), 2);cout << "before: p == " << *p << endl;advance(p, 2);  //等于p+=2; cout << "after : p == " << *p << endl;int k = 0;k=distance(p,iList.end());//等于iList.end()-pcout << "k == " << k << endl;return 0;}void Display(list<int>& a, const char* s)  {      cout << s << endl;      copy(a.begin(), a.end(),ostream_iterator<int>(cout, " "));//使用空格分开容器各项       cout << endl;  }  

原创粉丝点击