有没有一种简单的方法可以实现这一目标?
#pragma warning(default: all)
这是无效的;我可以提供一个特定的警告编号,而不是all
,这会将该警告恢复为默认值,但我想将所有警告恢复为默认值。我不想写出所有警告的长列表!
我的目标是确保我的代码干净利落地编译,并且我不会在我自己的代码中隐藏任何可能已被禁用的警告。
假设这是一个巨大的代码库,其他程序员已经在我包含但不控制的标题(包括预编译头文件)中禁用了警告,并且在项目设置中或通过命令行。
答案 0 :(得分:1)
http://msdn.microsoft.com/en-us/library/2c8f766e(v=vs.110).aspx
我担心你可能已经看过上面的参考了。但是,我的建议是使用警告实用程序的推/弹功能:
#pragma warning(push) // The very beginning of your code
#include <...>
#pragma warning(pop)
// Your code
...
Push允许您保存当时的每个警告状态,并弹出恢复到原始状态。