代码风格指南
本文档介绍小智 ESP32 项目的代码风格规范,项目使用 clang-format 工具来统一代码风格。
工具介绍
项目根目录提供了 .clang-format 配置文件,该配置基于 Google C++ 风格指南,并做了一些自定义调整。
主要格式规则
| 规则 | 说明 |
|---|---|
| 缩进 | 使用 4 个空格 |
| 行宽限制 | 100 字符 |
| 大括号风格 | Attach 风格(与控制语句在同一行) |
| 指针/引用 | 符号靠左对齐 |
| 头文件排序 | 自动排序 |
| 类修饰符 | 缩进为 -4 空格 |
安装 clang-format
Windows
winget install LLVM
# 或者使用 Chocolatey
choco install llvmLinux
# Ubuntu/Debian
sudo apt install clang-format
# Fedora
sudo dnf install clang-tools-extramacOS
brew install clang-format使用方法
格式化单个文件
clang-format -i path/to/your/file.cpp格式化整个项目
# 在项目根目录下执行
find main -iname *.h -o -iname *.cc | xargs clang-format -i提交前检查格式
# 检查文件格式是否符合规范(不修改文件)
clang-format --dry-run -Werror path/to/your/file.cppIDE 集成
Visual Studio Code
- 安装 C/C++ 扩展
- 在设置中启用
C_Cpp.formatting为clang-format - 可设置保存时自动格式化:
editor.formatOnSave: true
CLion
- 设置 > Editor > Code Style > C/C++
- 将
Formatter设置为clang-format - 选择使用项目中的
.clang-format配置文件
特殊处理
禁用格式化
如果某段代码不希望被格式化,可以使用注释包围:
// clang-format off
// 你的代码
// clang-format on
注意事项
- 提交代码前:请确保代码已经过格式化
- 不要手动调整:已格式化的代码对齐
- 配置文件位置:确保使用项目根目录下的
.clang-format配置 - 文件编码:验证文件编码为 UTF-8
常见问题
格式化失败
- 检查 clang-format 版本是否过低
- 确认文件编码为 UTF-8
- 验证
.clang-format文件语法是否正确
与期望格式不符
- 检查是否使用了项目根目录下的
.clang-format配置 - 确认没有其他位置的
.clang-format文件被优先使用