2010-09-28 28 views
2

这个表示法的含义是什么?#pragma表示法的含义

#pragma warning(disable : 4530) 
+1

看起来像是要禁用编译器错误4530:http://msdn.microsoft.com/en-us/library/2axwkyt4.aspx – AndyG 2010-09-28 04:26:40

+1

您应该发布此行随附的任何上下文。 – erjiang 2010-09-28 04:26:47

+1

请注意,'#pragma'是非标准编译器扩展的标准工具。 – 2010-09-28 04:42:51

回答

5

很自然,它禁用警告编号4530

1

这条线将禁用与代码4530检查this文章了解更多详情所有警告。

3

它指示MS的编译器忽略警告#4530

2

它不正是它说,这样做,关闭编译器警告编号4530在一个侧面说明,这不是一个免费的票,只是忽略警告,它只能用于特殊情况

1

这意味着禁用编号为4530的警告消息。

本附注的一般语法是:

#pragma warning(warning-specifier : warning-number-list [; warning-specifier : warning-number-list...]) 

更多信息here

1

正如大家所说#pragma用来禁用编码4530警告..

但从MSDN

C++异常哈哈ndler使用,但展开语义未启用。指定/ EHSC

此外,

当还未启用/ EHSC选项,与帧自动存储一个对象,函数之间做抛和功能捕捉抛出,将不被破坏。

这要得到摆脱

编译样品与/EHSC解决的警告。

,因为他们蠕变是不明智的禁用所有的警告。在这种情况下,而不是沉默它,你可以用/EHSC选项编译...

希望它可以帮助..

1

16.6/1“形式的#pragma PP-tokensopt 新线的预处理指令导致实施 的行为在实现定义为 的方式。未 通过实施认可的编译是 忽略不计。”

系统的实现定义的行为应该由供应商进行记录。所以,你需要考虑的文档。