32 lines
1.1 KiB
Markdown
32 lines
1.1 KiB
Markdown
# C++ 命名规范(Naming)
|
||
|
||
本章节以 Google C++ Style Guide 为基线,并补充模块化(Modules)相关的命名约定。
|
||
|
||
## 1. 总原则
|
||
|
||
- 一致性优先:以仓库现有风格为准,标准用于“无上下文/新代码”的默认选择。
|
||
- 名字体现作用域与语义,不用 `tmp/data/info` 这类弱语义词。
|
||
|
||
## 2. 命名风格总览(默认)
|
||
|
||
- 类型(class/struct/enum/using):`PascalCase`
|
||
- 函数/方法:`PascalCase`
|
||
- 变量:`lower_snake_case`
|
||
- 成员变量:`lower_snake_case_`(尾随下划线,Google)
|
||
- 常量:`kPascalCase`(编译期/全局固定值)
|
||
- 命名空间:`lowercase` 或 `lower_snake_case`(按项目约定,建议全仓统一)
|
||
|
||
## 3. 文件命名
|
||
|
||
- 文件名:`lower_snake_case`(与 Google 风格一致)
|
||
- 头文件:`foo_bar.h`
|
||
- 源文件:`foo_bar.cc`
|
||
- Module 文件:`foo_bar.cppm`
|
||
|
||
## 4. Modules 命名
|
||
|
||
- Module 名使用点分层级:`<root>.<subsystem>.<component>`
|
||
- 每一段建议用 `lower_snake_case`:
|
||
- 示例:`my_project.market.data_feed`
|
||
- 文件路径建议与 module 名可映射(便于检索与定位)。
|