Прочитать на английском

Поделиться через


Предупреждение компилятора (уровень 3) CS0414

Частное поле field назначено, но его значение не используется

Это предупреждение может возникнуть в нескольких сценариях, в которых компилятор может проверить, что на переменную не указана ссылка:

  • Частному полю назначено значение константы, но оно впоследствии не считывается. Ненужное назначение может снизить производительность. Рекомендуется удалить поле.

  • Частному или внутреннему статическому полю назначено значение константы только в инициализаторе. Рассмотрите возможность смены поля на константу.

  • Частному или внутреннему полю назначены значения констант, которые используются только в блоках, исключенных директивами #ifdef. Рекомендуется поместить поле в блок #ifdef.

  • Частному или внутреннему полю назначены значения констант в нескольких расположениях, но доступ к ним отсутствует. Если вам не нужно это поле, рекомендуется удалить его. В противном случае используйте его соответствующим образом.

В других ситуациях или в случаях, когда предлагаемый обходной путь недопустим, используйте директиву #pragma 0414.

В следующем примере представлена ситуация, в которой возникнет ошибка CS0414:

C#
// CS0414
// compile with: /W3
class C
{
   private int i = 1;  // CS0414

   public static void Main()
   { }
}

Примечание

Если переменная i объявлена как protected или publicнет, ошибка не будет создана, так как компилятор не может знать, может ли производный класс использовать его или другой клиентский код может создать экземпляр класса и ссылаться на переменную.

См. также