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


Ошибка компилятора CS0171

Обновлен: Ноябрь 2007

Сообщение об ошибке

Резервное поле для автоматически реализованного свойства "имя" должно быть полностью определено до возврата управления в вызывающий метод. Попробуйте использовать вызов конструктора по умолчанию из инициализатора конструктора.
Backing field for automatically implemented property 'name' must be fully assigned before control is returned to the caller. Consider calling the default constructor from a constructor initializer.

Конструктор в структуре должен инициализировать все поля структуры. Дополнительные сведения см. в разделе Конструкторы (руководство по программированию на C#).

Следующий пример приводит к созданию ошибки CS0171

// CS0171.cs
struct MyStruct
{
   MyStruct(int initField)   // CS0171
   {
      // i = initField;      // uncomment this line to resolve this error
   }
   public int i;
}

class MyClass
{
   public static void Main()
   {
      MyStruct aStruct = new MyStruct();
   }
}