• Visual Studio Code 配置 C/C++ 开发环境的最佳实践(VSCode + Clangd + CMake)


    Visual Studio Code 配置 C/C++ 开发环境的最佳实践(VSCode + Clangd + CMake)

    知乎原文参考地址1

    与 VSCode 官方文档配置 相比拥有的优势

    • Clangd 具有更优秀的性能,微软官方 Cpptools 的代码提示功能有明显延迟
    • Clangd 提供更精准的「转到定义」、「重命名符号」、「自动添加头文件」等功能(Jetbrains 家大名鼎鼎的 CLion 也是基于 Clangd)
    • Clang-Tidy 提供了强大的「静态检查」支持,并对于部分代码提供「快速修复」功能。详情请见 Clang-Tidy Checks。本文主要添加了对于「Google 开源项目风格指南」「Cpp Core Guidelines」和性能、潜在的 bug、移植性、现代 C++ 的检查
    • 微软官方 Cpptools 仅提供 Debug 功能(也可以使用 CodeLLDB 插件进行调试)

    vscode插件推荐

    在官网安装 Visual Studio Code 后,安装如下拓展:

    • clangd(必装,安装后建议通过它下载 clangd 二进制包,或者自己手动折腾安装)
    • CodeLLDB(必装,也可以使用C/C++ 插件进行调试)
    • CMakeTool(必装, CMake 插件)
    • Catppuccin Noctis (我个人非常喜欢的一款主题)
    • Error Lens(更直观的错误提示)
    • Project Manager(收藏、识别和管理你的工作空间和项目文件夹)
    • Vim(Vim 模拟器,不知道 vim 是什么不要安装)
    • GitLens(Git插件,可选)
    • Git Graph(Git插件,可选)
    • GitHub Copilot(Github 开发的代码智能提示插件,不建议初学者使用)

    注意:「C/C++」插件和「clangd」插件共存,VSCode 会提示发生冲突,请选择「Disable IntelliSense」

    compiled_commands.json

    参考文章地址2
    clangd是基于 compile_commands.json 文件来完成对项目的解析,所以需要针对项目生成 compile_commands.json 文件。

    cmake工程

    如果通过 cmake 方式编译项目,在 CMakeLists.txt 文件中 添加 set(CMAKE_EXPORT_COMPILECOMMANDS ON),之后cd build && cmake ..,可以发现在 build 目录下已经生成了 compile_commands.json 文件。

    makefile工程

    如果是基于 make 方式来编译,那么可以先安装 pip install compiledb,之后在当前目录下运行 (a) compiledb -n make -C build (b) compiledb make -C build 这两个命令中的其中一个来生成 compile_commands.json 文件,其中前者不会执行真正的 make 编译命令。

    $ pip install compiledb
    $ compiledb -n make -C build
    
    • 1
    • 2
  • 相关阅读:
    个体诊所电子处方模板,佳易王药店电子处方系统门诊病历软件教程
    11个Redis系列高频面试题,哪些你还不会?
    查询中字段用法
    因为一次bug的教训,我决定手撕Nacos源码(先撕客户端源码)
    GroundingDINO(一种开集目标检测算法)服务化,根据文本生成检测框
    C++结构型模式-装饰模式
    使用 Django Admin 进行高效的后台管理
    h()函数
    文章本天成|跟我一起来一场简洁易懂的servlet的过滤器Filter的学习吧
    Gradle学习-6 APT 实现一个路由跳转框架(APT、发布maven仓库)
  • 原文地址:https://blog.csdn.net/u013870094/article/details/134408343