OpCodes.Stfld Feld
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ersetzt den im Feld eines Objektsverweises oder Zeigers gespeicherten Wert durch einen neuen Wert.
public: static initonly System::Reflection::Emit::OpCode Stfld;
public static readonly System.Reflection.Emit.OpCode Stfld;
staticval mutable Stfld : System.Reflection.Emit.OpCode
Public Shared ReadOnly Stfld As OpCode
Feldwert
Hinweise
In der folgenden Tabelle sind das Hexadezimal- und MSIL-Assemblyformat (Microsoft Intermediate Language) der Anweisung sowie eine kurze Referenzzusammenfassung aufgeführt:
Format | Assemblyformat | BESCHREIBUNG |
---|---|---|
7D <T > |
stfld field |
Ersetzt den Wert des field -Objekts durch einen neuen Wert. |
Das Übergangsverhalten des Stapels in sequenzieller Reihenfolge lautet:
Ein Objektverweis oder Zeiger wird auf den Stapel gepusht.
Ein Wert wird auf den Stapel gepusht.
Der Wert und der Objektverweis/Zeiger werden aus dem Stapel geploppt. Der Wert von
field
im -Objekt wird durch den angegebenen Wert ersetzt.
Die stfld
Anweisung ersetzt den Wert eines Felds eines Objekts (Typ O
) oder über einen Zeiger (Typ native int
, &
oder *
) durch einen bestimmten Wert.
Field
ist ein Metadatentoken, das auf einen Feldmemberverweis verweist. Die stfld
-Anweisung kann ein Präfix von oder von Unaligned und Volatileaufweisen.
NullReferenceException wird ausgelöst, wenn der Objektverweis oder Zeiger ein NULL-Verweis ist und das Feld nicht statisch ist.
MissingFieldException wird ausgelöst, wenn field
in den Metadaten nicht gefunden wird. Dies wird in der Regel überprüft, wenn die MSIL-Anweisung (Microsoft Intermediate Language) nicht zur Laufzeit in nativen Code konvertiert wird.
Die folgende Emit Methodenüberladung kann den stfld
Opcode verwenden: