STL (standard template library)C++中提供的标准模板库
通俗说法
STL就是将常用的数据结构进行封装—>顺序表、链表、栈和队列二叉树、哈希等,然后再增加一些通用类型的算法—>find() 等
通用:算法任意数据类型都可以处理,与具体的数据结构无关,而且算法还非常灵活。
具体来说
STL包含六大组件(模板)
- 容器:本质就是对常见数据结构的封装
- 迭代器
- 算法:顺序表、链表、二叉树、哈希表、find() 等
- 适配器/配接器
- 空间配置器
- 仿函数
容器
序列式容器----> 线性的数据结构:顺序表、链表、string类
vector:动态类型的顺序表
array:静态类型的顺序表
forward_list:掉头结点的循环单链表
deque:双端队列
deck/queue:动态类型的二维数组