OpCodes.Stobj 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.
Kopiert einen Wert eines angegebenen Typs aus dem Auswertungsstapel in eine angegebene Speicheradresse.
public: static initonly System::Reflection::Emit::OpCode Stobj;
public static readonly System.Reflection.Emit.OpCode Stobj;
staticval mutable Stobj : System.Reflection.Emit.OpCode
Public Shared ReadOnly Stobj 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 |
|---|---|---|
81 <T> |
stobj class |
Speichert einen Wert vom Typ class aus dem Stapel in den Arbeitsspeicher. |
Das Übergangsverhalten des Stapels in sequenzieller Reihenfolge lautet:
Eine Adresse wird auf den Stapel verschoben.
Ein Werttypobjekt vom Typ
classwird auf den Stapel verschoben.Das Objekt und die Adresse werden aus dem Stapel eingetaucht; das Werttypobjekt an der Adresse gespeichert wird.
Die stobj Anweisung kopiert das Werttypobjekt in die adresse angegebene Adresse (einen Zeiger vom Typ native int, *oder &). Die Anzahl der kopierten Bytes hängt von der Größe der Klasse ab, die durch classein Metadatentoken dargestellt wird, das einen Werttyp darstellt.
Der Vorgang der stobj Anweisung kann durch eine unmittelbar vorangehende Volatile oder Unaligned präfixe Anweisung geändert werden.
TypeLoadException wird ausgelöst, wenn die Klasse nicht gefunden werden kann. Dies wird in der Regel erkannt, wenn Microsoft MSIL-Anweisungen (Intermediate Language) nicht zur Laufzeit, sondern in systemeigenen Code konvertiert werden.
Die folgende Emit Methodenüberladung kann den stobj Opcode verwenden: