#pragma指令是否会抑制指定页面中的警告或整个应用程序中的警告?

时间:2013-09-20 08:15:11

标签: c# warnings suppress-warnings

我有一个问题:

当我在其中一个类文件中使用警告指令#pragma时,我收到警告“#pragma warning disable”,那么这些指定的警告将被禁止整个应用程序或仅针对该页面?

3 个答案:

答案 0 :(得分:1)

预处理器指令仅应用于定义它们的编译单元,在这种情况下,它是您使用它们的类文件

答案 1 :(得分:0)

如果您使用#pragma warning disable,则会在文件结束前启用它。'

我引用language specification(9.5.1):

  

符号保持定义,直到#undef指令为止   处理符号,或者直到达到源文件的末尾。

答案 2 :(得分:0)

似乎抑制在文件结束或恢复警告之前一直有效。

language specification中的右段是9.5.8,未提及此事实。 可以从规范中讨论的第9.5.1节推断:条件编译符号。

有关详尽的解释,请参阅以下帖子:

C#: Is pragma warning restore needed?