C++ STL 标准模板库 六大核心

张开发
2026/4/19 1:17:18 15 分钟阅读

分享文章

C++ STL 标准模板库 六大核心
文章目录容器Containers—— 存放数据算法Algorithms—— 操作数据迭代器Iterators—— 容器与算法的桥梁仿函数 / 函数对象Functors适配器Adapters分配器AllocatorsSTL 容器 算法 迭代器 仿函数 适配器 分配器4核心 2额外组件它们的关系容器放数据 → 迭代器连接 → 算法操作数据 → 仿函数辅助容器Containers—— 存放数据最常用的数据结构集合序列式容器vector 动态数组list 双向链表deque 双端队列array 固定大小数组C11forward_list 单向链表C11关联式容器键值对set 有序不重复集合map 有序键值对multiset 可重复集合multimap 可重复键值对无序关联式容器哈希表unordered_setunordered_mapunordered_multisetunordered_multimap算法Algorithms—— 操作数据STL 提供 100 通用算法常用查找find count binary_search排序sort stable_sort拷贝 / 删除copy remove erase替换 / 反转replace reverse合并 / 去重merge unique最值min max min_element max_element遍历for_each迭代器Iterators—— 容器与算法的桥梁像 “智能指针”用来遍历容器iteratorconst_iteratorreverse_iterator所有算法都通过迭代器操作容器不依赖具体容器类型这是 STL 设计精髓。仿函数 / 函数对象Functors可以像函数一样调用的对象算术plus minus multiplies关系equal_to less greater逻辑and or notgreater、less以及 C11 的 Lambda 表达式适配器Adapters容器适配器stack queue迭代器适配器函数适配器绑定、取反等分配器Allocators管理内存分配默认 allocator开发者一般不用管。CSTL18种容器类详解

更多文章