OpCodes.Stloc 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.
Popt den aktuellen Wert vom Anfang des Auswertungsstapels und speichert ihn in der Liste der lokalen Variablen an einem angegebenen Index.
public: static initonly System::Reflection::Emit::OpCode Stloc;
public static readonly System.Reflection.Emit.OpCode Stloc;
staticval mutable Stloc : System.Reflection.Emit.OpCode
Public Shared ReadOnly Stloc 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 |
---|---|---|
FE 0E <unsigned int16 > |
stloc index |
Popt einen Wert aus dem Stapel und speichert ihn in der lokalen Variablen index . |
Das Übergangsverhalten des Stapels in sequenzieller Reihenfolge lautet:
- Ein Wert wird aus dem Stapel entfernt und in der lokalen Variablen
index
platziert.
Die stloc
Anweisung füllt den obersten Wert aus dem Auswertungsstapel und verschiebt ihn in die lokale Variablennummer index
, wobei lokale Variablen mit 0 und höher nummeriert werden. Der Typ des Werts muss mit dem Typ der lokalen Variablen übereinstimmen, wie in der lokalen Signatur der aktuellen Methode angegeben.
Das Speichern in lokalen Werten, die einen ganzzahligen Wert enthalten, der kleiner als 4 Byte ist, schneidet den Wert ab, wenn er vom Stapel zur lokalen Variablen wechselt. Gleitkommawerte werden von ihrer nativen Größe (Typ F
) auf die größe gerundet, die dem Argument zugeordnet ist.
Korrekte MSIL-Anweisungen (Microsoft Intermediate Language) erfordern, dass index
es sich um einen gültigen lokalen Index handeln muss. Für die stloc
Anweisung index
muss im Bereich von 0 bis einschließlich 65534 liegen (insbesondere ist 65535 ungültig). Der Grund für das Ausschließen von 65535 ist pragmatisch: Wahrscheinliche Implementierungen verwenden eine 2-Byte-Ganzzahl, um sowohl den Index eines lokalen Als auch die Gesamtzahl der lokalen Werte für eine bestimmte Methode nachzuverfolgen. Wenn ein Index von 65535 als gültig festgelegt worden wäre, wäre eine breitere ganze Zahl erforderlich, um die Anzahl der lokalen Werte in einer solchen Methode nachzuverfolgen.
Die folgenden Emit Methodenüberladungen können den stloc
Opcode verwenden: