CS9043-ás fordítási hiba

A tulajdonságok újbóli visszaadása nem kötelező.

A required módosító azt határozza meg, hogy egy tagot be kell állítani az objektum inicializálása során (azaz egy objektum inicializálón keresztül).) Ahhoz, hogy egy tulajdonság egy objektum inicializálón belül legyen beállítva, rendelkeznie kell egy set tartozékmal (setterrel). refA visszaadott tulajdonságok nem tartalmazhatnak beállítót, ezért a módosító nem is szerepelhet benne required .

Példa

Az alábbi minta a CS9043-at hozza létre:

// CS9043.cs (5,29)

class C
{
    private int i;
    public required ref readonly int Number => ref i;
}

A hiba kijavítása

Ha tulajdonságot required szeretne kapni, a tulajdonság érték szerinti újrabontása a következő hibát javítja ki:

    public required int Number
    {
        get
        {
            return i;
        }
        set
        {
            i = value;
        }
    }