我正在使用 Visual Studio 2008 处理 MFC 应用程序(大约 2000 个文件)。我为此应用程序运行 Cppcheck,但我发现了这两个问题。
问题toomanyconfigs:(信息——由于#ifdef 配置过多,文件检查将被中断。可以通过--force 强制检查所有#ifdef 配置命令行选项或来自 GUI 首选项。但是这可能会增加检查时间。)
问题 missingInclude:(信息——Cppcheck 无法找到所有的包含文件。Cppcheck 可以在没有找到包含文件的情况下检查代码。但如果所有的包含文件已找到。请检查您的项目的包含目录并将它们全部添加为 Cppcheck 的包含目录。要查看 Cppcheck 找不到哪些文件,请使用 --check-config。)
我的 Cppcheck 参数列表是 cppcheck --quiet --verbose --check-config --force --enable=all --suppress=missingIncludeSystem --template=vs --std=c++11 $(ItemPath)
我该如何解决这些问题?
最佳答案
我是 Cppcheck 开发人员。
使用--force
时得到toomanyconfigs 很奇怪。如果您可以创建重现该问题的文件,请在 our issue tracker 中报告.您或许可以删除文件中的所有代码,只保留预处理器指令。
您可以使用 -I
指定包含路径。
Cppcheck-1.76(下一个版本)将能够导入 Visual Studio 2010 及更高版本的解决方案文件,因此您可以自动获取包含路径。也许测试起来会很有趣。
关于c++ - 如何解决 Cppcheck 中的问题 ID "toomanyconfigs"和 "missingInclude:",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39093300/