容器 list

 (1) 插入操作,不能使用MyTestContain.begin()+3 之类?!(要对数据进行复制)

     list<int>::iterator pr=MyTestContain.begin();
     pr++;
     pr++;
     MyTestContain.insert(pr,more,more+3);//插入操作,必须加在队尾?!
     OutPut();

 

(2)移除操作,只能移除元素
     MyTestContain.remove(2);//是移除所有的2?

 

(3)拼接操作(只改变.next指针,不对数据进行复制,也可以实现任意位置的插入,推荐使用)

    list<int> one(5,2);

    MyTestContain.splice(MyTestContain.begin(),one);//是移除所有的2?

list的操作都在指针的前面位置,例如指针 *pr=a 则插入数据在a的前面。

 

 (4) 去重操作

  MyTestContain.unique();

  但是只能去除连续的重复。

 

(5) 合并操作

MyTestContain.merge(MyTestContain2);

很奇怪,要看MyTestContain的最后一个元素和MyTestContain2的第一个元素,没什么规律?

 

 

 

posted on 2013-08-06 21:14  shoutcharter  阅读(175)  评论(0编辑  收藏  举报

导航