在Visual Studio中启用单个警告

0xC*_*ACE 26 c++ warnings visual-studio

是否有编译器开关在Visual Studio中启用单个警告?

我问的原因是我想启用警告C4265默认关闭.我的搜索只是找到了关闭警告的方法.

甚至称为如何:启用或禁用编译器警告的 Microsoft页面仍然只提到禁用.

Ben*_*ley 24

#pragma warning(default:4265)
Run Code Online (Sandbox Code Playgroud)

看起来似乎会将警告设置为默认设置(将被禁用),但事实并非如此.它打开了.

http://msdn.microsoft.com/en-us/library/2c8f766e%28VS.80%29.aspx

你也可以这样做:

#pragma warning(X:4265)
// where X is the warning level(1,2,3 or 4) that you want this warning to be generated at
Run Code Online (Sandbox Code Playgroud)

  • 如果所选警告的_default警告级别_(在严重性方面)低于项目属性中设置的级别,则此操作无效.**示例:**警告级别设置为3(/ W3),但警告[C4245](http://msdn.microsoft.com/en-us/library/e9s7thk1.aspx)的默认级别为4.使用`#pragma warning(默认值:4245)`将不会启用它,但是`#pragma warning(3:4245)`会启用它.(这只是我的意思) (3认同)
  • +1。是的,“默认”一词表示“默认警告级别”,而不是“默认状态”。感谢您指出这一点,我自己没有找到它。 (2认同)

Mar*_* Ba 23

如果要在项目设置中打开(或关闭),则必须转到:

Configuration Properties -> C/C++ -> Command Line然后在其他选项下,您可以输入:

/w3####将警告设置为3级,从而启用它; 或者您可以输入/wd####以禁用警告.

  • 如果您使用 /w2,则要启用特定警告,必须使用 /w24706。这告诉编译器将警告 4706 视为 2 级警告。 (2认同)