list的部分用法

来源:互联网 发布:锐捷交换机查看mac表 编辑:程序博客网 时间:2024/05/01 08:09
#include <iostream>
#include <algorithm>
#include <list>
#include <iterator>
#include <string>
using namespace std;
template<typename type>
void printlist(const type& elem)
{
 static int c = 0;
 if(c%4 == 0)
  cout << endl;
 cout << elem << "/t";
 c++;
}
int main(void)
{
 list<int> coll_1;
 list<int> coll_2;
 for(int i = 0; i < 20; ++i)
 {
  if(i%2 == 0)
   coll_1.push_back(i);
  else
   coll_2.push_front(i);
 }
 cout << "coll_1: " ;
 for_each(coll_1.begin(), coll_1.end(),
       printlist<int>);
 cout << endl;
 cout << "coll_2:";
 for_each(coll_2.begin(), coll_2.end(),
       printlist<int>);
 cout << endl;
 coll_1.splice(coll_1.begin(), coll_2);
 cout << "coll_1: ";
 for_each(coll_1.begin(), coll_1.end(),
       printlist<int>);
 cout << endl;
 cout << "coll_2:" ;
 for_each(coll_2.begin(), coll_2.end(),
       printlist<int>);
 cout << endl;
 coll_2.assign( find(coll_1.begin(), coll_1.end(), 3),
             coll_1.end() );
 coll_1.sort();
 cout << "coll_1: ";
 for_each(coll_1.begin(), coll_1.end(),
       printlist<int>);
 cout << endl;
 cout << "coll_2:" ;
 for_each(coll_2.begin(), coll_2.end(),
       printlist<int>);
 cout << endl;
 coll_2.sort();
 coll_1.merge(coll_2);
 cout << "coll_1: ";
 for_each(coll_1.begin(), coll_1.end(),
       printlist<int>);
 cout << endl;
 cout << "coll_2:" ;
 for_each(coll_2.begin(), coll_2.end(),
       printlist<int>);
 cout << endl;
 coll_1.unique();
 cout << "coll_1: ";
 for_each(coll_1.begin(), coll_1.end(),
       printlist<int>);
 cout << endl;
 return 0;
}