1
flax5a98aa2 2024-09-03 13:38:11 +08:00
我这边一直都是这样👀
|
![]() |
2
proxytoworld 2024-09-03 14:11:30 +08:00
我也是这样,改完之后还是有波浪线,要编译一下才没了
|
3
Cnming 2024-09-03 16:45:20 +08:00 via iPhone ![]() 用的是默认的 cpptools 么,试试 clangd 呢
|
![]() |
4
valord577 2024-09-03 20:02:50 +08:00
长期用 clangd 根据 json 补全 速度比 cpptools 快很多 暂时没遇到你说的问题 建议捣鼓试试
|
5
wkla 2024-09-03 21:44:42 +08:00
哪怕在 Visual Studio 里都会有这样的问题,这可能是微软的 intelli sence 通病?
|
![]() |
6
exhades 2024-09-03 22:13:36 +08:00
用 clangd 并且为项目生成 compile_commands.json 就 ok
|
7
nooneanyone 2024-09-03 23:19:11 +08:00
用 clangd
|
![]() |
8
ashong 2024-09-04 03:24:15 +08:00 via iPhone
clangd 速度快,但是如果配合 cmake 只支持 makefile 和 ninja , 否则无法生成 compile_commands.json ,自己的类无法识别
|
![]() |
9
PowerDi OP @flax5a98aa2 原来不是只有我是这样!
|
![]() |
11
PowerDi OP @valord577 根据 json 会用到 compile_commands.json 吗? cpp 工具也是可以支持这个的
|
![]() |
12
PowerDi OP cpptools 我是一直启用了对 compile_commands.json 的支持,路径也配正确了。
|
![]() |
13
valord577 2024-09-04 10:02:46 +08:00
@PowerDi #11 对 就是 compile_commands.json 这个
cmake meson 可以直接生成 compile_commands.json makefile autotools 可以搭配 bear 这个工具 bear -- make -j 也能生成 json |
![]() |
14
valord577 2024-09-04 10:06:24 +08:00
@PowerDi #13 补充
如果是 linux apt 系列的发行版 可以直接添加 llvm-apt 源 apt install clangd-{version} 然后在 vscode 插件配置`clangd.path: /usr/bin/clangd-{version}` 如果 mac 的话 考虑 brew / windows vs installer 可以安装 llvm 工具链 (独立组件) 如果是 windows/mac 可以考虑这个脚本 进行静态编译 https://github.com/clangd/clangd/issues/514#issuecomment-2327754089 |
![]() |
15
PowerDi OP @valord577 #13 我喜欢用 Name: C/C++ Definition Autocompletion 这个插件的补全功能,有时候头文件写了很多 Setter 函数,在 cpp 里直接输入.就能提醒补全命名空间跟形参,跟头文件对应。用 cpptools 时这个插件能用,用 clangd 好像会被自带的.给功能覆盖了,所以用一段时间就不用了
|
![]() |
16
valord577 2024-09-04 11:27:14 +08:00
|