顺序容器:按顺序存储数据,具有插入速度快但是查找操作相对较慢的特点。
- std::vector 动态数组
- std::deque 允许头部操作的vector
- std::list 操作与双向链表一样
- std::forward_list 单向链表,只能沿一个方向遍历
关联容器:按指定的顺序存储数据,就像字典一样。这将降低插入数据的速度,但在查询方面有很大的优势。
- std::set
- std::unordered_set
- std::map
- std::unordered_map
- std::multiset
- std::unordered_multiset
- std::multimap
- std::unordered_multimap
容器适配器:是顺序容器和关联容器的变种,其功能有限,用于满足特定的需求。
- std::stack 栈,FILO
- std::queue 队列,FIFO
- std::priority_queue 以特定顺序存储元素,因为优先级最高的元素总是位于队列开头
STL迭代器:迭代器是一座桥梁,让这些模板函数能够以一致而无缝的方式处理容器,而容器是模板类。
- 输入迭代器
- 输出迭代器
- 前向迭代器
- 双向迭代器
- 随机访问迭代器
STL算法:提供了查找、排序、反转等标准的常见的编程工具【include<algorithm>】
- std::find
- std::find_if
- std::reverse
- std::remove_if
- std::transform