[英]How to change c++ code to make clang-tidy modernize-use-transparent-functors happy
[英]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 中转储每个文件的包含? 任何前进的道路都行。
以供参考:
我是一名 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.