✅ 推荐的现代 C++ 开发工作流(含 VSCode / Cursor 插件配置)
🧰 一、环境要求
- C++ 编译器(如
g++
或clang++
) - CMake(建议 ≥ 3.16)
- clangd(建议 ≥ 14,最好用系统包管理器安装)
- VSCode 或 Cursor 编辑器
🪛 二、VSCode 插件安装(适用于 VSCode 和 Cursor)
打开 VSCode 插件市场,安装以下插件:
插件名称 | 说明 |
---|---|
✅ clangd | 由 LLVM 官方维护的语言服务器,提供智能跳转、补全等 |
✅ CMake Tools | 用于管理构建配置、运行 cmake 构建 |
✅ CMake | 提供 CMakeLists.txt 的语法高亮和智能感知 |
✅ CodeLLDB (可选) | 高级调试功能(用于断点、变量查看) |
✅ Better C++ Syntax (可选) | 颜色高亮更强 |
📝 Cursor 编辑器内置了对 clangd 的支持,只要项目中有
compile_commands.json
,通常无需额外配置插件,但可通过设置检查是否启用clangd
。
⚙️ 三、clangd 安装与配置
1. 安装 clangd(按平台)
- macOS(推荐用 Homebrew):
brew install llvm
- Ubuntu:
sudo apt install clangd-14
- Windows:
使用 LLVM 官方安装包
安装 clangd,并加入 PATH。
2. VSCode 设置 clangd
路径(可选)
打开 VSCode 设置(Ctrl+Shift+P → Preferences: Open Settings (JSON)),添加:
"clangd.path": "/usr/bin/clangd" // 或 /opt/homebrew/opt/llvm/bin/clangd
🧱 四、CMake 项目初始化与构建
项目结构建议:
my_project/
├── CMakeLists.txt
├── src/
│ └── main.cpp
├── include/
│ └── mylib.hpp
├── build/ # 构建输出目录
└── .clangd # clangd 配置(可选)
执行构建流程:
mkdir -p build
cd build
cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON ..
make -j
ln -s build/compile_commands.json . # 可选,VSCode 更好识别
📦 五、.clangd 示例配置(可选)
放在项目根目录的 .clangd
文件中:
CompileFlags:Add: [-Wall, -std=c++17]
Diagnostics:UnusedIncludes: StrictClangTidy:Add: [-checks=modernize-*]
🧭 六、VSCode 项目配置推荐(可选)
.vscode/settings.json
示例:
{"C_Cpp.default.configurationProvider": "ms-vscode.cmake-tools","C_Cpp.default.compileCommands": "${workspaceFolder}/build/compile_commands.json","clangd.arguments": ["--background-index","--clang-tidy"],"cmake.sourceDirectory": "${workspaceFolder}","cmake.buildDirectory": "${workspaceFolder}/build"
}
✅ 七、日常工作流简版回顾
步骤 | 命令 / 操作 |
---|---|
初始化构建 | cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON .. |
编译项目 | make -j 或用 CMake Tools 插件点击构建 |
清理构建 | make clean 或 rm -rf build/ |
打开项目 | VSCode / Cursor 自动识别并启用 clangd |
写代码 / 跳转 / 补全 / 调试 | 全流程无阻碍 |
新增源文件 | 写完保存,clangd 会自动索引,无需额外操作 |
🧠 提示
-
第一次打开项目:clangd 会慢慢建立
.cache/clangd/index
,稍等几秒即可 -
如果 Cursor 识别不到类型,优先检查:
compile_commands.json
是否存在?clangd
是否正确读取?