我想尝试使用 Core Guidelines checker tool在 VS2015 下的 C++11/14 项目上。
在我的代码中,我使用了很多来自 Boost 的库,它们触发了很多警告。我不关心这些警告,因为 Boost 正在做很多非常聪明的工作,并且编写库的目的不是为了符合指南,它们大多早于指南。
但是面对如此多的警告,我无法在我的代码中找出真正的问题(至少根据工具)。
有没有办法抑制第三方代码的所有警告?也许#including boost headers前后有一些属性?
我已阅读 this page来自 Visual C++ 团队博客,但我找不到它。
最佳答案
有一个未记录的环境变量 CAExcludePath,用于过滤来自该路径中文件的警告。我通常在 %CAExcludePath% 设置为 %Include% 的情况下运行。
您也可以在 MSBuild 中使用它,示例见此处(成功与否):Suppress warnings for external headers in VS2017 Code Analysis
MSVC 正在研究类似于 GCC 的系统 header 的东西,应该是针对此问题的更全面的解决方案。
关于c++ - 有选择地禁用第三方库的 C++ Core Guidelines Checker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45785126/