C++ STL(标准模板库)是一套功能强大的 C++ 模板类,提供了通用的模板类和函数,这些模板类和函数可以实现多种流行和常用的算法和数据结构,如向量、链表、队列、栈等。
通用:1.将常见的数据结构进行封装
2:通用的算法
与数据类型无关--模板
与具体的数据结构无关
用户可以定制算法具体功能
STL:六大组件(容器,迭代器,算法,配接器,空间配置器,仿函数)
STL代码主要分为三类:algorithm(算法)、container(容器)和iterator(迭代器),STL中几乎所有的代码都采用了模板类和模版函数的方式,这相比于传统的由函数和类组成的库来说提供了更好的代码复用性。
容器常见的数据结构封装
线性:A.连续空间:string, vector(动态顺序表), deque动态二维数组),array(静态顺序链表)
B.链式结构:list(带头节点双向循环链表)forward_list:带头节点循环单链表