list容器

list是双向链表结构,它的数据由若干个节点构成,每一个节点都包括一个信息块(即实际存储的数据)、一个前驱指针和一个后驱指针。

list的特点

  1. 不支持随机访问;
  2. 在任何位置插入或删除非常迅速;

list的初始化和成员函数

有关其他函数的应用,可以参考下面的连接,很详细。list成员函数的使用。

forward_list 容器

forward_list是一个单向链表,只支持单向顺序访问,在链表的任何位置进行插入/删除操作都非常快。

forward_list的特点
forward_list只提供钱箱迭代器,因此不支持反向迭代器,比如rbegin()等成员函数。
forward_list不提供size()成员函数。
forward_list没有指向最末元素的锚点,因此不提供back()、push_back()和pop_back()。
forward_list不提供随机访问,这一点跟list相同。
插入和删除元素不会造成“指向至其他元素”的指针,引用和迭代器失效。

forward_list的初始化和成员函数


  forward_list容器还支持非修改类函数,比如:==,!=,<,>,<=,>=。

list和forward_list相关推荐

  1. C++11中std::forward_list单向链表的使用

    std::forward_list是在C++11中引入的单向链表或叫正向列表.forward_list具有插入.删除表项速度快.消耗内存空间少的特点,但只能向前遍历.与其它序列容器(array.vec ...

  2. C++_STL——list(and forward_list)

    C++_STL--list(and forward_list) 1.类模板 template < class T, class Alloc = allocator<T> > c ...

  3. C++ Primer 5th笔记(9)chapter9 顺序容器 forward_list

    1. 特殊的forward_list 单向链表的删除操作,真正删除的是某个元素后面的值(想想是为什么?) 操作 定义 lst.before_begin() 返回指向链表首元素之前不存在的元素的迭代器, ...

  4. STL的forward_list链表

    forward_list链表 forward_list forward_list::before_begin forward_list::cbefore_begin forward_list forw ...

  5. forward_list容器

    forward_list forward_list(单向链表)序列容器,允许在序列中任何地方进行恒定的时间插入和擦除操作. forward_list(单向链表)被实现为单链表; 单链表可以将它们包含的 ...

  6. 向顺序容器vector、string、deque、list、forward_list中插入\删除元素时迭代器、引用、指针的变化

    1.插入元素 (1)对于vector.string来说,当在某个位置插入元素后,如果内存空间重新分配,则指向任何位置的迭代器.指针.引用都会失效: 如果内存空间没有重新分配,则在插入位置之前的迭代器. ...

  7. forward_list的insert操作

    forward_list的insert函数有以下几个(fobj是有一个forward_list的容器): fobj.insert_after(p,t) //p是个迭代器,指示插入的位置,这个函数是在p ...

  8. 顺序容器(vector、list、string、deque、forward_list)及迭代器、容器适配器

    文章目录 概述 所有容器都支持的操作 迭代器 迭代器支持的操作 迭代器支持的算术运算 容器类型 size_type iterator 和 const_iterator 容器定义和初始化 拷贝初始化 顺 ...

  9. 特殊的forward_list操作

    为了理解forward_list为什么有特殊版本的添加和删除操作,考虑当我们从一个单向链表中删除一个元素时会发生什么.当添加或删除一个元素时,删除或添加的元素之前的那个元素的后继会发生变化.为了添加或 ...

  10. forward_list

    forward_list 容器具有和 list 容器相同的特性,即擅长在序列的任何位置进行插入元素或删除元素的操作,但对于访问存储的元素,没有其它容器(如 array.vector)的效率高. 另外, ...

最新文章

  1. 34种墨西哥植物模型 Globe Plants – Bundle 34 Mexican Plants
  2. mysql 查询多边形_mysql中判断一个点是否在多边形中
  3. 无效0_12位浙江高考生成绩被教育考试院判定无效,0分收场的原因很可惜
  4. bim 模型web页面展示_BIM+装配式建筑工程师2020年必须拿下的技能证书
  5. 絮语之一:悲悯·海·《垂死的肉身》
  6. eShopOnContainers 知多少[11]:服务间通信之gRPC
  7. linux PCI驱动调用字符设备驱动方式
  8. Heredoc和Nowdoc
  9. [Java] 蓝桥杯BASIC-27 基础练习 2n皇后问题
  10. Nginx 除了负载均衡,还能做什么?
  11. 车载wince6.0升级7.0_微信 Android 版更新 7.0.5:多处均有升级即刻APP 6.0发布,往社交方向靠近...
  12. 用计算机弹刚好一点,《计算机组成原理》作业解答(14级)
  13. 埃默里大学有计算机专业吗,埃默里大学计算机科学硕士排名第30(2020年TFE Times排名)...
  14. EditPlus实现json格式化
  15. [转载]NFC问题分析
  16. 【PyCharm】修改编辑器背景
  17. NRF24L01+模块实现双向通信(带ACK payload)
  18. csrf漏洞复现(附源码)
  19. 软件工程Alpha冲刺day2
  20. struts2 错误消息显示(s:fielderror )的时候老有前面的那个黑点,郁闷死了,感觉特别不爽,下面总结了集中解决的方法

热门文章

  1. python 镜像_python测开平台使用dockerfile构建镜像
  2. docker 镜像源_前端 Docker 镜像体积优化
  3. plsql的异常提示怎么定位_PLSQL 异常处理(转)
  4. CMU 15-213 Introduction to Computer Systems学习笔记(3) Floating Point
  5. python os 的坑_Python踩坑之旅其二裸用os.system的原罪
  6. Springboot的工作机制:2 @SpringBootApplication背后的秘密
  7. 面向对象编程的四大特性
  8. ivar和property
  9. Vue_(组件)实例属性
  10. mongodb 学习笔记--- 基础知识