侯捷C++八部曲:C++标准库 体系结构与内核分析
2021-12-02 23:03 cascle 阅读(390) 评论(0) 收藏 举报1. 认识headers、版本、重要资源






C++标准库:编译器提供的头文件






2. STL体系结构基础介绍

容器使用分配器管理内存
迭代器:泛化指针,容器和算法之间的桥梁
迭代器:对现有模板类做接口转换

predicate:宾语,条件


所有容器都有自己专属的iterator

auto推导出来的类型是value_type

3. 容器之分类与各种测试(一)

红色的是C++11新增的




5. 容器之分类与各种测试(三)







6. 容器之分类与各种测试(四)











7. 分配器之测试





8. 源代码之分布(VC,GCC)







9. OOP(面向对象编程) VS. GP(泛型编程)
较早GNU标准库继承用的很少



容器自己带sort就用自己的,因为他的内部结构不能用于通用算法

10. 技术基础:操作符重载and模板(泛化,全特化,偏特化)









__STL_TEMPLATE_NULL代表要特化


类型匹配看类名后面尖括号里的
11. 分配器



allocator<int>()生成一个无名对象





目的是尽量减少malloc带来的开销
容器大小事一样的,不需要带有cookie记录每个元素多大



12. 容器之间的实现关系与分类
浙公网安备 33010602011771号