OpCodes.Stfld Feld

Definition

Ersetzt den im Feld eines Objektbezugs 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 Microsoft MSIL-Assemblyformat (Intermediate Language) der Anweisung zusammen mit einer kurzen Referenzzusammenfassung aufgeführt:

Format Assemblyformat Description
7D <T> stfld field Ersetzt den Wert des field Objekts durch einen neuen Wert.

Das Übergangsverhalten des Stapels in sequenzieller Reihenfolge lautet:

  1. Ein Objektverweis oder Zeiger wird auf den Stapel verschoben.

  2. Ein Wert wird auf den Stapel verschoben.

  3. Der Wert und der Objektverweis/-zeiger werden aus dem Stapel eingeblentet; der Wert im field 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 Feldelementverweis verweist. Die stfld Anweisung kann ein Präfix von oder beides Unaligned und Volatileaufweisen.

NullReferenceException wird ausgelöst, wenn es sich bei dem Objektverweis oder Zeiger um einen Nullverweis handelt und das Feld nicht statisch ist.

MissingFieldException wird ausgelöst, wenn field die Metadaten nicht gefunden werden. Dies wird in der Regel überprüft, wenn die Microsoft MSIL-Anweisung (Intermediate Language) in nativen Code konvertiert wird, nicht zur Laufzeit.

Die folgende Emit Methodenüberladung kann den stfld Opcode verwenden:

Gilt für: