Ошибка компилятора CS1917
Членам поля только для чтения "имя" типа "имя_структуры" не могут быть присвоены значения с помощью инициализатора объекта, так как они имеют тип значения.
Поля, доступные только для чтения, которые являются типами значений, могут быть назначены только в конструкторе.
Измените тип struct на class.
Инициализируйте структуру в конструкторе.
При компиляции следующего примера возникнет ошибка CS1917:
// cs1917.cs
class CS1917
{
public struct TestStruct
{
public int i;
}
public class C
{
public readonly TestStruct str = new TestStruct();
public static int Main()
{
C c = new C { str = { i = 1 } }; // CS1917
return 0;
}
}
}
Отзыв о .NET
.NET — это проект с открытым исходным кодом. Выберите ссылку, чтобы оставить отзыв: