C++的标准模板库(STL)学习笔记

    技术2023-09-04  85

    目录

    1、C++的标准模板库主要包含3个核心组件[1]:

    2、容器deque[2](Double ended queue)

    3、Vector(向量)容器[3]

    4、官方文档


    1、C++的标准模板库主要包含3个核心组件[1]:

    (1)容器(Containers):容器是用于管理某一类对象的集合。C++提供了各种不同类型的容器,比如deque、list、vector、map。后面会对这些详细记录。

    (2)算法(Algorithms):算法作用于容器,它们提供了执行各种操作的方式,包括对容器内容执行初始化、排序、搜索和转换等操作。

    (3)迭代器(Iterators):迭代器用于遍历对象集合的元素。这些集合也可能是容器的子集。

    容器的使用的说明文档,重点关注:

    (1)调用;

    (2)参数;

    (3)返回值。

    2、容器deque[2](Double ended queue)

            deque容器为双口容器,即可以从头尾两端进行操作。

    函数功能备注push_front()从容器首端进入 pop_front()从容器首段离开 rbegin()获取容器第一个元素上一位的迭代器 front()获取首个元素 begin()获取容器第一个元素的迭代器 back()获取末尾函数 rend()获取最后一个元素的迭代器 end()获取容器最后一个元素下一位的迭代器 push_back()

    从容器末尾进入

     pop_back()从末尾离开容器 

    头文件要求:

    #include<deque>

    3、Vector(向量)容器[3]

            向量是一个封装了动态大小数组的顺序容器。可以简单地认为,向量是一个能够存放任意类型的动态数组。其函数如下:

    函数作用备注push_back()在数组的最后添加一个数据 pop_back()去掉数组的最后一个数据 at()得到编号位置的数据 begin()得到数组头的指针 end()得到数组的最后一个单元的引用 front()得到数组头的引用 back()得到数组的最后一个单元+1的指针 max_size()得到vector分配的最大内存 capacity()当前vector分配的大小 size()

    当前使用数组的大小

     resize()改变当前使用数组的大小,如果它比当前使用的大,则填充默认值 reserve()

    改变当前vector所分配空间的大小

     erase()删除指针指向的数据项 clear()清空当前的vector rbegin()将vector反转后的开始指针返回(其实就是end-1) rend()将vector反转后的开始指针返回(begin-1) empty()判断vector是否为空 swap()与另一个vector交换数据 

    头文件说明:

    #include<vector>

    4、官方文档

    官方文档比较清晰:http://www.cplusplus.com/reference/stl/

     

     

    【1】https://www.runoob.com/cplusplus/cpp-stl-tutorial.html

    【2】https://www.cnblogs.com/renboyu/p/13150262.html

    【3】https://www.runoob.com/w3cnote/cpp-vector-container-analysis.html

     

    Processed: 0.015, SQL: 9