C++面试题汇总
- 1. C基础
- 2. C++面向对象
- 3. STL
-
- 3.1 vector的底层原理
- 3.2 vector中的reserve和resize的区别
- 3.3 vector中的size和capacity的区别
- 3.4 vector中erase方法与algorithn中的remove方法区别
- 3.5 vector迭代器失效的情况
- 3.6 正确释放vector的内存(clear(), swap(), shrink_to_fit())
- 3.7 list的底层原理
- 3.8 什么情况下用vector,什么情况下用list,什么情况下用deque
- 3.9 priority_queue的底层原理
- 3.10 map 、set、multiset、multimap的底层原理
- 3.11 为何map和set的插入删除效率比其他序列容器高
- 3.12 为何map和set每次Insert之后,以前保存的iterator不会失效?
- 3.13 当数据元素增多时(从10000到20000),map的set的查找速度会怎样变化?
- 3.14 map 、set、multiset、multimap的特点
- 3.15 为何map和set的插入删除效率比其他序列容器高,而且每次insert之后,以前保存的iterator不会失效?
- 3.16 为何map和set不能像vector一样有个reserve函数来预分配数据?
- 3.17 set的底层实现实现为什么不用哈希表而使用红黑树?
- 3.18 hash_map与map的区别?什么时候用hash_map,什么时候用map?
- 3.19 迭代器失效的问题
- 3.20 STL线程不安全的情况
- 4. C++ 11
C++知识点总结: 快速跳转