⚡
C++ 八股
语言基础、模板与泛型、STL、内存管理、对象模型与多态、并发编程、编译链接
专题列表
语言基础
13 篇- · C++ 中 const、constexpr、constinit、consteval 的区别与使用
- · auto、decltype 与 decltype(auto)
- · const 与 constexpr
- ...及 10 篇更多
模板与泛型
5 篇- · SFINAE 与 Concept:模板约束从“技巧”到“语言特性”
- · 可变参数模板(Variadic Templates)
- · 完美转发与引用折叠
- ...及 2 篇更多
STL 与迭代器
6 篇- · STL 算法与仿函数:为什么算法和容器分离?仿函数到底比普通函数强在哪?
- · unordered_map 与哈希冲突
- · vector 扩容与迭代器失效
- ...及 3 篇更多
内存管理
6 篇- · RAII 与资源管理
- · new、delete 与 placement new 面试笔记
- · 内存对齐与字节对齐
- ...及 3 篇更多
对象模型与多态
7 篇- · RTTI、dynamic_cast 与 typeid
- · override、final 与重写 / 重载 / 隐藏
- · 多重继承与虚继承
- ...及 4 篇更多
并发编程
6 篇- · C++:future、promise、packaged_task 与 async
- · std::thread 生命周期、join() 与 detach()
- · 互斥锁与条件变量
- ...及 3 篇更多
编译链接与构建
8 篇- · ABI 与符号可见性
- · CMake 基础(现代 C++ 工程面试笔记)
- · ODR 与 inline
- ...及 5 篇更多
这里直接按专题组织,不再额外包一层 专题/ 目录。
专题导航
- 01-语言基础/README.md
- 02-模板与泛型/README.md
- 03-STL与迭代器/README.md
- 04-内存管理/README.md
- 05-对象模型与多态/README.md
- 06-并发编程/README.md
- 07-编译链接与构建/README.md
使用方式
- 先从专题
README.md看整体框架和复习顺序 - 再按子主题逐个击破,优先掌握“高频问法 + 典型陷阱 + 代码解释”
- 每篇子文档统一按这套结构写:
- 面试回答(核心概念 + 典型示例)
- 面试追问(继续深挖的方向)
- 原理展开(底层机制 + 代码演示)
- 易错点(常见陷阱 + 注意事项)
- 记忆技巧(快速记忆口诀)
本次扩充重点
这次扩充以“面试高频核心题”为准,不追求冷门大全,重点补齐以下缺口:
- 语言基础中的作用域、存储期、链接属性,以及
constinit/consteval - 模板中的可变参数模板、类型萃取与 traits
- STL 中的容器选型、迭代器规则、算法库配合
- 内存管理中的
new/delete、placement new、对齐、异常安全 - 对象模型中的继承细节、对象切片、RTTI、多重继承与虚继承
- 并发中的线程生命周期、异步模型、死锁规避
- 编译链接中的头文件保护、模板编译模型、ABI、静态初始化顺序、CMake
专题概览
01-语言基础(12个子主题):
- 值类别与移动语义、指针引用、
const/constexpr auto/decltype、初始化、static、作用域与链接属性- 类型转换、
explicit、函数规则、lambda、constinit/consteval
02-模板与泛型(5个子主题):
- 模板实例化与特化、完美转发与引用折叠、SFINAE 与 concept
- 可变参数模板、类型萃取与 traits
03-STL与迭代器(6个子主题):
vector扩容与迭代器失效、unordered_map与哈希冲突、红黑树与关联容器- 迭代器分类与失效规则、常用容器对比与选型、STL 算法与仿函数
04-内存管理(6个子主题):
- 栈与堆、RAII、智能指针与循环引用
new/delete与placement new、内存对齐、异常安全
05-对象模型与多态(7个子主题):
- 虚函数表与动态绑定、对象大小与内存布局、拷贝控制与特殊成员函数
- 继承访问控制与对象切片、
override/final与重写隐藏 - RTTI、多重继承与虚继承
06-并发编程(6个子主题):
- 互斥锁与条件变量、原子变量与内存序、线程池设计
- 线程生命周期、
future/promise/async、死锁与锁顺序
07-编译链接与构建(8个子主题):
- 编译到链接流程、静态库与动态库、ODR 与
inline - 头文件保护、模板与头文件、ABI 与符号可见性
- 静态初始化顺序问题、CMake 基础
现在这套目录更接近“高频面试题库”,可以直接按专题复习,也可以按追问链条横向串联。