是的,这些可以被抑制。
通常,我反对抑制警告,但是在这种情况下,用于互操作的结构绝对需要存在一些字段,即使您从未打算(或可以)使用它们,因此在这种情况下,我认为这应该是有道理的。
通常,要禁止这两个警告,您将修复有问题的代码。第一个(“ …永不使用”)通常是早期版本代码遗留下来的代码气味。也许代码已删除,但字段留在后面。
第二个通常是针对错误使用字段的代码气味。例如,您可能会错误地将属性的新值写回到属性本身,而不要写入后备字段。
#pragma warning disable 0169
... field declaration
#pragma warning restore 0169
要取消警告“ ”,请执行以下操作:
#pragma warning disable 0649
... field declaration
#pragma warning restore 0649
要自己找到此类警告编号(即,我怎么知道使用0169和0649),请执行以下操作:
C:\ Dev \ VS.NET \ ConsoleApplication19 \ ConsoleApplication19 \ Program.cs(10,28):警告CS :从未将字段’ConsoleApplication19.Program.dwReserved’分配给该字段,并且其默认值始终为0
:根据@Jon Hanna的评论,可能为此发出了一些警告,以供将来查找此问题和答案的人使用。