C++ 核心指南(C++ Core Guidelines)是由 Bjarne Stroustrup、Herb Sutter 等顶尖 C+ 专家创建的一份 C++ 指南、规则及最佳实践。旨在帮助大家正确、高效地使用“现代 C++”。
这份指南侧重于接口、资源管理、内存管理、并发等 High-level 主题。遵循这些规则可以最大程度地保证静态类型安全,避免资源泄露及常见的错误,使得程序运行得更快、更好。
文中提到的 GSL(Guidelines Support Library) 是 C++ 核心指南支持库 https://github.com/Microsoft/GSL
P:Philosophy 基本理念
本节的规则反映了现代 C++ 的哲学/基本理念,贯穿整个 C++ 核心指南:
规则摘要:
- P.1:直接用代码表达想法
- P.2:编写符合 ISO 标准的 C++ 代码
- P.3:表达意图
- P.4:(理想情况下)程序应该是静态类型安全的
- P.5:优先使用编译时检查而不是运行时检查
- P.6:无法在编译时检查的内容应该在运行时可检查
- P.7:尽早捕获运行时错误
- P.8:不要泄露任何资源
- P.9:不要浪费时间或空间
- P.10:优先使用不可变数据而不是可变数据
- P.11:封装混乱的结构,而不是让其散布在代码中
- P.12:根据需要使用支持工具
- P.13:根据需要使用支持库
这些基本理念是其他章节具体规则的理论基础。
P.1:直接用代码表达想法
关联 P.3