- C++的STL源码(这个系列也很重要,建议侯捷老师的STL源码剖析书籍与视频),其中包括内存池机制,各种容器的底层实现机制,算法的实现原理等)
- STL源码中的hashtable的实现
- STL中unordered_map和map的区别和应用场景
- STL中vector的实现
- STL容器的几种迭代器以及对应的容器(输入迭代器,输出迭代器,前向迭代器,双向迭代器,随机访问迭代器)
顺序容器:vector,deque是随机访问迭代器;list是双向迭代器
容器适配器:stack,queue,priority_queue没有迭代器
关联容器:set,map,multiset,multimap是双向迭代器
unordered_set,unordered_map,unordered_multiset,unordered_multimap是前向迭代器
- STL中的traits技法
type_traits
iterator_traits
char traits
allocator_traits
pointer_traits
array_traits
- vector使用的注意点及其原因,频繁对vector调用push_back()对性能的影响和原因。