STL list用法总结

来源:互联网 发布:形容好朋友的网络词 编辑:程序博客网 时间:2024/04/30 13:08

2015北京网赛的那个模拟题让我深感自己list的各种用法各种不熟。。。这回总结一下,在那题里我用到的几个知识

  • 先定义一些几个变量,为后面例子使用
    list<int> l1,l2;    list<int>::iterator it = l1.begin();
  • 迭代器重载了++,–,==,不能比较大小
  • insert: 插入函数,插入到迭代器前,对迭代器没有任何影响,该指哪还指哪
    //在it前插入1个元素    l1.insert(it,1);    //用l2的一部分(按左开右闭)插入到l1中    l2.insert(++l1.begin(),l2.begin(),l2.end());
  • erase:删除函数,迭代器被删后失效,所以很多时候需要用个tmp迭代器来辅助一下
    //删除迭代器位置上的元素    l1.erase(it);    //删除一个区间上的元素,左开右闭    l1.erase(it,l1.end());
  • 迭代器重载的” * “运算符:可以用来访问内容,也可以用来修改内容
    *it = *l2.begin();
0 0
原创粉丝点击