Chyba kompilátoru CS1918
Členy vlastnosti 'name' typu 'type' nelze přiřadit inicializátor objektu, protože se jedná o typ hodnoty.
K této chybě dochází, když se pokusíte použít objekt inicializátor inicializovat vlastnosti typu struktury, který je sám vlastností třídy, která je inicializována.
- Pokud je nutné plně inicializovat pole vlastnosti v inicializátoru objektů, změňte strukturu na typ třídy. V opačném případě inicializovat členy struktury v samostatné volání metody po vytvoření objektu pomocí inicializátoru objektu.
Následující příklad vygeneruje 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;
}
}
Zpětná vazba k produktu .NET
.NET je open source projekt. Vyberte odkaz pro poskytnutí zpětné vazby: