STL是C++的标准模板库,包括了6大组件:容器、算法、迭代器、仿函数、适配器、分配器
一、容器
1、顺序容器:
- vector(向量容器):内存空间连续分配,适合随机访问和尾部新增和修改。
- list(双向链表):内存空间不连续分配,不适合随机访问,但适合平凡修改和新增。
- queue(双向队列):内存空间为多段不连续的空间,段内连续,段间不连续,结合vector和list的优缺点,可以随机访问(性能低于vector,优于list),也可以容器内部新增和修改(性能低于list,优于vector)。
2、关联容器:set、multiset、map、multimap
集合:非重复元素集合set、重复元素集合multimet
映射表:非重复元素映射表map、重复元素映射表multimap
3、容器适配器:stack、queues、priority queues
二、算法
不依赖于具体的容器
三、迭代器
是容器和算法的粘合剂,迭代器不实现真正的遍历功能,遍历功能由具体的容器实现。
四、
五、
六、
-- 未完待续 --