Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Nie można przypisać elementów członkowskich właściwości typu "type" z inicjatorem obiektu, ponieważ jest to typ wartości.
Ten błąd występuje, gdy próbujesz użyć inicjatora obiektu, aby zainicjować właściwości typu struktury, który jest samą właściwością klasy, która jest inicjowana.
Aby poprawić ten błąd
- Jeśli musisz w pełni zainicjować pola właściwości w inicjatorze obiektu, zmień strukturę na typ klasy. W przeciwnym razie zainicjuj elementy członkowskie struktury w osobnym wywołaniu metody po utworzeniu obiektu za pomocą inicjatora obiektów.
Przykład
Poniższy przykład generuje 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;
}
}
Zobacz też
Współpracuj z nami w serwisie GitHub
Źródło tej zawartości można znaleźć w witrynie GitHub, gdzie można również tworzyć i przeglądać problemy i żądania ściągnięcia. Więcej informacji znajdziesz w naszym przewodniku dla współtwórców.