Freigeben über


Compilerwarnung (Stufe 3) CS0282

Es gibt keine festgelegte Reihenfolge für die Felder in mehreren Deklarationen der partiellen Klasse oder Struktur 'Typ'. Um eine Reihenfolge anzugeben, müssen sich alle Instanzenfelder in der gleichen Deklaration befinden.

Verlagern Sie alle Membervariablen in eine einzelne partielle Klassendefinition, um diesen Fehler zu beheben.

Dieser Fehler tritt häufig durch die Verwendung eines partiellen struct , das an mehreren Stellen definiert ist, wobei sich einige der Membervariablen in einer Definition und andere in einer anderen Definition befinden.

Durch den folgenden Code wird der Fehler CS0282 ausgelöst.

Beispiel 1

Dieser Code enthält eine Beschreibung für ein struct. Kompilieren Sie diese beiden Module mithilfe des folgenden Befehls gemeinsam in einem einzelnen Schritt:

csc /target:library cs0282_1.cs cs0282_2.cs

partial struct A
{
    int i;
}

Beispiel 2

Dieser Code enthält eine widersprüchliche Beschreibung für dasselbe struct.

partial struct A
{
    int j;
}

Hinweis

Wenn das Strukturlayout keine Rolle spielt, wird die Struktur durch Ergänzen mit [StructLayout(LayoutKind.Auto)] ausgedrückt, und die Warnung wird unterdrückt.