C++ 学习路径
cpp/10_learning 中的项目都很小,但每个项目只回答一个清晰的问题。Wiki 文章会把代码中的实验提升为可以复习、讨论和复用的知识。
三篇起步文章
| 顺序 | 文章 | 对应项目 | 核心问题 |
|---|---|---|---|
| 01 | 语法糖与语法盐 | 004_syntactic_sugar | 什么时候让编译器替我们少写一点,什么时候故意要求显式? |
| 02 | 封装与不变性 | 002_class_encapsulation | 状态和改变状态的规则应该由谁负责? |
| 03 | struct 还是 class | 003_struct_vs_class | 类型的公开程度应该由什么设计信号决定? |
推荐阅读方法
先运行对应项目,再读文章中的结论。阅读代码时,优先寻找三件事:
- 哪些状态是公开的,哪些状态只能通过行为改变?
- 哪些规则在构造时建立,又在哪些函数中持续维护?
- 如果删掉注释,只看命名和接口,代码还能否说明自己的意图?