一、clangd 是什么
clangd 是 LLVM 的 LSP(Language Server Protocol) 实现,为编辑器提供代码补全、跳转定义、实时错误提示、重构建议。
# 安装
brew install llvm # macOS,包含 clangd
apt install clangd # Linux
# 生成编译数据库(clangd 需要知道编译选项)
cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON .
# 生成 compile_commands.json 文件
二、和 CLion 的配合
CLion 默认自带 clangd 支持。
VSCode 需要安装 clangd 插件(禁用默认的 C++ IntelliSense)。
配置后得到的实时提示:
- 输入时显示类型不匹配
- 悬停查看函数签名
- 自动显示 clang-tidy 警告(红线)
- 代码补全(包含 STL 模板的展开结果)
- 重构(重命名变量/函数、提取函数)