繁体   English   中英

如何在 Visual Studio 中使用 clang-tidy 现代化

[英]how to use clang-tidy modernize with visual studio

我正在尝试从 Visual Studio 内或从命令行对文件应用 clang 现代化,利用我的 Visual Studio 2015 C++ 项目中的包含路径和设置。

我创建了一个 clang-tidy 设置文件,如下所示:

clang-tidy -dump-config=.clang-tidy 
  -checks="modernize-loop-convert,modernize-deprecated-headers"

并从(cygwin)命令行验证它在单个文件上工作: clang-tidy.exe -explain-config列表(除其他外)

'modernize-deprecated-headers' is enabled in the C:\abc\.clang-tidy.

可以通过手动设置包含来在单个文件上运行它: clang-tidy.exe someFile.cpp -- -Ic:/abc -I. -IIncludes clang-tidy.exe someFile.cpp -- -Ic:/abc -I. -IIncludes

我安装了视觉工作室铛格式VS插件,和创建的示例.clang格式文件, { BasedOnStyle: "LLVM", IndentWidth: 20 }由VS插件拾取。 然后我天真地尝试使用 clang-tidy 配置提供 clang-format,但不出所料,这根本不起作用。

总结一下:如何在文件和 Visual Studio 项目上运行 clang-tidy?

也许一种解决方法是从 Visual Studio 中转储每个文件的包含? 任何前进的道路都行。

以供参考:

如何启用 clang-tidy 的“现代化”检查?

如何使用 clang-format 文件提供 Visual Studio Clang-Format 插件?

我是一名 Cppcheck 开发人员。

您可以在 Cppcheck GUI 中对 Visual Studio 解决方案运行 clang-tidy。

它是一个免费的开源 (GPL) 工具。 你可以在这里下载: http : //cppcheck.sf.net

一些截图: http : //cppcheck.sourceforge.net/clangtidy/index.html

它目前没有集成其他 clang 工具(例如 clang-format),但可以提取 Cppcheck GUI 使用的 clang-tidy 命令。也许你可以编辑这些。

Visual Studio 2019 版本 16.4+原生支持clang-tidy

要直接在 Visual Studio 中使用 Clang Tidy 现代化,您可以尝试我的 Clang Power Tools vs-extension。 它具有 Clang Tidy-Fix 功能,可以自动更新您的代码。

您提到您在单个文件上运行 Clang Tidy。 您可以使用 vs-toolbar 中的 tidy 命令,它将在编辑器的活动文件上运行 tidy。 如果您想对多个文件执行 tidy,请使用上下文菜单中的命令或在整个项目上运行它,但我不确定这是否是您想要做的,因为代码更改将更难以看到。

关于附加包含,您可以选择:包含目录和系统包含。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM