C++ 学习目录:基础语法、核心机制与项目实战
2026/10/5大约 6 分钟编程语言C++C++学习目录阅读导航
C++ 学习目录:基础语法、核心机制与项目实战
建议先掌握基础语法,再学习核心机制,随后进入标准库、并发与项目实战。每个专题内按原有文件编号阅读;文章末尾的上一篇、下一篇只连接同一专题,不跨专题跳转。
基础语法 / 语言基础
- C++ 入门程序:main、cout 与编译运行流程
- C++ 类型与变量:初始化、赋值和 sizeof
- C++ 表达式与运算符:优先级、逻辑和类型转换
- C++ 控制流入门:if、switch、循环与提前返回
- C++ 函数入门:参数、调用栈、返回值与重载
- C++ 作用域与生命周期:名字可见性和对象存活
- C++ 引用入门:参数传递、只读借用与返回风险
- C++ const 入门:只读对象、引用与指针访问路径
- C++ 指针入门:地址、解引用、nullptr 与参数
- C++ auto 类型推导:值、引用与范围 for
- C++ 枚举与命名空间:enum class 和名字归属
- C++ 基础语法实践:用数据流串起一个小程序
核心入门 / 编译与链接
- C++ 编译流程:预处理、编译、汇编与链接
- C++ 预处理与头文件:include、宏与包含保护
- C++ 翻译单元:独立编译与多文件程序边界
- C++ 声明与定义:编译检查和链接实体的分工
- C++ ODR 单一定义规则:头文件与重复定义错误
- C++ 目标文件结构:机器码、符号表与重定位
- C++ 链接器原理:符号解析与 undefined reference
- C++ 静态库原理:目标文件归档与链接顺序
- C++ 动态库:链接期依赖与运行期加载
- C++ 编译链接错误排查:从头文件到动态库加载
核心入门 / 内存与资源管理
- C++ 对象存储位置:自动、静态、动态与临时对象
- C++ 名字、地址、指针与引用:借用和拥有的区别
- C++ 数组与内存边界:长度丢失、指针算术及容器
- C++ new 与 delete:内存分配、构造和释放
- C++ 对象生命周期:构造、析构与异常清理
- C++ 拷贝、移动与析构:三五零法则和资源所有权
- C++ RAII 原理:析构、栈展开与资源释放
- C++ unique_ptr:独占所有权、移动与自定义删除器
- C++ 资源管理中的 shared_ptr 与 weak_ptr
- C++ 资源管理接口:借用、接管与共享所有权
核心入门 / 值类别与表达式
- C++ 值类别入门:表达式身份与类型的区别
- C++ 左值、纯右值与将亡值:值类别判断
- C++ 引用绑定:T&、const T& 与 T&&
- C++ 临时对象生命周期:延长规则与悬空引用
- C++ 求值顺序:优先级、短路与表达式副作用
- C++ 重载选择与值类别:引用参数和成员限定
- C++ 移动语义入门:std::move 与资源转移
核心入门 / 面向对象
- C++ 类与对象:封装、不变量和访问控制
- C++ 构造函数:初始化顺序、explicit 与合法状态
- C++ 析构顺序:对象成员、基类与资源清理
- C++ 类的拷贝控制:特殊成员与共享资源风险
- C++ 继承与对象布局:基类子对象和构造链
- C++ 对象切片:按值传递如何丢失派生部分
- C++ 虚函数调用:运行时多态与派生实现
- C++ 虚析构函数:多态基类的安全销毁
- C++ 面向对象中的 shared_ptr 与 weak_ptr
- C++ 面向对象接口:明确借用、接管与共享责任
进阶专题 / STL容器与迭代器
- C++ STL 容器概览:顺序、有序与哈希结构
- C++ vector 原理:连续数组、扩容与 reserve
- C++ string、array 与 deque:文本、定长和双端访问
- C++ list 与 forward_list:节点、稳定性及缓存代价
- C++ map 与 set:有序键、比较器和查找接口
- C++ unordered_map 与 unordered_set:哈希桶和 rehash
- C++ 迭代器:半开范围、能力分类与 C++20 Ranges
- C++ 迭代器失效:插入、删除、扩容与 rehash
- C++ 容器选择:访问模式、地址稳定性与性能验证
- C++ 容器协作实践:迭代器与库存报表数据流
进阶专题 / STL算法与函数对象
- C++ STL 算法入门:迭代器范围、规则与结果
- C++ sort 与迭代器:随机访问、比较器和稳定排序
- C++ 谓词与比较器:布尔规则、多键排序和严格弱序
- C++ find、count 与 any_of:把范围查询写成意图
- C++ transform、copy 与 for_each:映射、复制和遍历
- C++ remove_if 与 erase:重排、删除和遍历安全
- C++ 数值算法:accumulate、partial_sum 与 inner_product
- C++ lambda 捕获:闭包状态、引用与生命周期
- C++ 函数对象:operator()、状态与可复用规则
- C++ std::function:类型擦除与可调用对象统一
进阶专题 / 并发与内存序
- C++ 数据竞争:多线程自增、未定义行为与同步
- C++ 互斥锁:业务不变量、RAII 与条件变量
- C++ volatile 与线程同步:为什么不能替代原子操作
- C++ std::atomic:原子读写、RMW 与能力边界
- C++ 内存模型:happens-before、同步与修改顺序
- C++ memory_order_seq_cst:顺序一致性与硬件开销
- C++ memory_order_relaxed:计数、编号与发布风险
- C++ release/acquire:安全发布与同步配对
- C++ memory_order_consume:依赖链与工程使用边界
- C++ CAS 与 compare_exchange:无锁更新和 ABA 风险
- C++ fence 与 barrier:内存排序约束和常见误用
- C++ Cache Line 与 False Sharing:布局和并发性能
- C++ 内存序工程实践:共享状态、工具与审查清单




