Ошибка компилятора CS1918
Членам свойства "имя" типа "тип" не могут быть присвоены значения с помощью инициализатора объекта, поскольку они имеют тип значения
Эта ошибка возникает при попытке использовать инициализатор объекта для инициализации свойств структуры, которая сама является свойством инициализируемого класса.
- Если в инициализаторе объекта необходимо полностью инициализировать поля свойства, измените структуру на класс. В противном случае после создания объекта с помощью инициализатора объекта инициализируйте члены структуры в вызове отдельного метода.
В следующем примере возникает ошибка CS1918:
// cs1918.cs
public struct MyStruct
{
public int i;
}
public class Test
{
private MyStruct str = new MyStruct();
public MyStruct Str
{
get
{
return str;
}
}
public static int Main()
{
Test t = new Test { Str = { i = 1 } }; // CS1918
return 0;
}
}
Отзыв о .NET
.NET — это проект с открытым исходным кодом. Выберите ссылку, чтобы оставить отзыв: