17 标准模板库STL之list

这篇具有很好参考价值的文章主要介绍了17 标准模板库STL之list。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

基础知识

        1、list是由双向链表实现的,这也意味着,其内存空间是不连续的。因此,list不支持随机访问,没有提供[]操作符重载和at()函数,迭代器只能进行++和--操作,不能进行+n和-n操作。由于底层使用链表实现,list在任意位置插入和移除元素都非常高效。list适用于需要经常进行插入和移除操作,但不需要经常随机访问的应用场景。

        2、与vector不同,list没有内存空间预分配机制,也没有提供capacity()和reserve()函数。每插入一个元素,都会从内存中直接分配;每移除一个元素,都会直接释放它占用的内存。

        3、使用list前,需要先包含其头文件。

#include <list>
using namespace std;

        list容器提供的主要接口可以参看下表。

接口

备注

size()

返回list中的元素个数

empty()

判断lis文章来源地址https://www.toymoban.com/news/detail-425893.html

到了这里,关于17 标准模板库STL之list的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 0829|C++day7 auto、lambda、C++数据类型转换、C++标准模板库(STL)、list、文件操作

        封装一个学生的类,定义一个学生这样类的vector容器, 里面存放学生对象(至少3个) 再把该容器中的对象,保存到文件中。 再把这些学生从文件中读取出来,放入另一个容器中并且遍历输出该容器里的学生。

    2024年02月10日
    浏览(46)
  • 【C++ STL】vector基础知识

    2023年05月29日
    浏览(51)
  • C++ 基础知识 四 ( 认识STL 上篇 )

    Standard Template Library:标准模板库 是一个基于泛型的C++类模板库由Alexander Stepanov于1994年开发 其目的是为了提供一致通用和高效的数据结构和算法,同时不限制用户所处理的数据类型和编程范式。STL的原型最初由Andrew Koenig和其它C++专家小组进行设计并在1995年C++标准委员会的推

    2024年02月03日
    浏览(50)
  • Flink1.17 基础知识

    来源:B站尚硅谷 Flink 概述 Flink 是什么 Flink的核心目标是“ 数据流上的有状态计算 ” (Stateful Computations over Data Streams)。 具体来说:Apache Flink是一个 框架式和分布式处理引擎 ,用于对无界和有界数据流进行有 状态计算 。 Flink特点 处理数据的目标是: 低延迟、高吞吐、结

    2024年01月25日
    浏览(114)
  • odoo17基础培训1-odoo开发基础知识准备以及odoo17开发环境安装

    当我介绍客户使用odoo系统作为业务管理平台时,有时会被问到Odoo是什么? 简单点,可以这么说: Odoo是一套完整的系统,是一个开源框架,针对 ERP 的需求发展而来,适合定制出符合客户各种需求的ERP系统、电子商务系统、CMS、或者是网站。 由于 Odoo 的底层结构很强大,所

    2024年02月02日
    浏览(44)
  • 【STM32标准库】【基础知识】程序烧录

    文章基于适用于STM32F4系列,作者使用STM32F401CCU6开发板。 本文章基于此系列和开发板展开讨论。 我使用的开发板是某宝购买的,型号是STM32F401CCU6 请点这里 烧录器为同家店铺制作的STLINK-V2 请点这里 开发板外观 烧录器外观 请去官网下载,传送门 全部默认安装即可,注意选择

    2024年02月09日
    浏览(84)
  • 【C++】C++模板基础知识篇

    个人主页 : zxctscl 文章封面来自:艺术家–贤海林 如有转载请先通知 实现一个通用的交换函数: 在实现不同类型的参数Swap就得写很多个, 用起来太麻烦了。 使用函数重载虽然可以实现,但是有一下几个不好的地方: 重载的函数仅仅是类型不同,代码复用率比较低,只要

    2024年03月28日
    浏览(50)
  • C#,入门教程(20)——列表(List)的基础知识

    上一篇: C#,入门教程(19)——循环语句(for,while,foreach)的基础知识 https://blog.csdn.net/beijinghorn/article/details/124060844 List顾名思义就是数据列表,区别于数据数组(array)。 List比数组提供强大得多!多!多!多!的功能,能存储更多!多!多!类型的数据(泛型)! List是更

    2024年01月16日
    浏览(55)
  • 突破编程_C++_高级教程(模板编程的基础知识)

    C++ 的模板编程是一种编程技术,它允许程序员编写处理不同类型数据的通用代码。通过使用模板,可以创建与特定数据类型无关的函数或类,这些函数或类在编译时可以根据需要生成特定数据类型的版本。这增加了代码的复用性、灵活性和类型安全性。 从本质上来说, C++

    2024年02月19日
    浏览(43)
  • Linux 驱动开发基础知识——LED 模板驱动程序的改造:设备树(十一)

     个人名片: 🦁作者简介:学生 🐯个人主页:妄北y 🐧个人QQ:2061314755 🐻个人邮箱:2061314755@qq.com 🦉个人WeChat:Vir2021GKBS 🐼 本文由妄北y原创,首发CSDN 🎊🎊🎊 🐨座右铭:大多数人想要改造这个世界,但却罕有人想改造自己。 专栏导航: 妄北y系列专栏导航: C/C++的基

    2024年02月21日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包