分配专用字段“field”,但永远不会使用其值
注释
此警告仅在显式 生成 或 重新生成 作业期间报告。 在 IDE 中键入期间不会将它显示为 IntelliSense 诊断的一部分。 这意味着,如果通过使用该字段或删除字段来修复警告,则警告可能会保留在错误列表中,直到您再次编译或重新编译项目。
在编译器可以验证从未引用变量的几种方案中,可能会发生此警告:
为专用字段分配常量值,但随后永远不会读取。 不必要的分配可能会影响性能。 请考虑删除字段。
私有或内部静态字段仅在初始化过程中被赋予常量值。 请考虑将字段更改为常值。
为私有或内部字段分配常量值,并且仅在 #ifdef 指令排除的块中使用。 请考虑将字段置于 #ifdef 块中。
在多个位置为私有或内部字段赋予常量值,但从未访问过。 如果不需要该字段,请考虑将其删除。 否则,请以某种适当的方式使用它。
在其他情况下,或者建议的解决方法不可接受,请使用 #pragma 0414。
以下示例显示了将生成 CS0414 的一种方法:
// CS0414
// compile with: /W3
class C
{
private int i = 1; // CS0414
public static void Main()
{ }
}
注释
如果变量 i 声明为 protected 或 public未生成任何错误,因为编译器不知道派生类是否可以使用它,或者其他一些客户端代码可能会实例化该类并引用变量