OpCodes.Ret 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.
Wird von der aktuellen Methode zurückgegeben und legt einen Rückgabewert (sofern vorhanden) vom Auswertungsstapel des Aufgerufenen auf dem Auswertungsstapel des Aufrufenden ab.
public: static initonly System::Reflection::Emit::OpCode Ret;
public static readonly System.Reflection.Emit.OpCode Ret;
staticval mutable Ret : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ret 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 |
---|---|---|
2A | Ret | Gibt von der -Methode zurück, wobei möglicherweise ein Wert zurückgegeben wird. |
Das Übergangsverhalten des Stapels in sequenzieller Reihenfolge lautet:
Der Rückgabewert wird aus dem Auswertungsstapel des Aufgerufenen geknallt.
Der in Schritt 1 abgerufene Rückgabewert wird in den Aufruferauswertungsstapel gepusht.
Wenn der Rückgabewert im Auswertungsstapel des Aufgerufenen nicht vorhanden ist, wird kein Wert zurückgegeben (kein Stapelübergangsverhalten für die aufgerufene oder aufruferische Methode).
Der Typ des Rückgabewerts (sofern vorhanden) der aktuellen Methode bestimmt den Typ des Werts, der vom Anfang des Stapels abgerufen und in den Stapel der Methode kopiert wird, die die aktuelle Methode aufgerufen hat. Der Auswertungsstapel für die aktuelle Methode muss leer sein, mit Ausnahme des zurückzugebenden Werts.
Die ret
-Anweisung kann nicht verwendet werden, um die Steuerung aus einemtry
- , filter
- catch
oder finally
-Block zu übertragen. Verwenden Sie in einem try
oder catch
die Leave -Anweisung mit dem Ziel einer ret
Anweisung, die sich außerhalb aller einschließenden Ausnahmeblöcke befindet. Da die filter
Blöcke und finally
logisch Teil der Ausnahmebehandlung sind und nicht die Methode, in die ihr Code eingebettet ist, führen ordnungsgemäß generierte MSIL-Anweisungen (Microsoft Intermediate Language) keine Methodenrückgabe aus einem oder finally
ausfilter
.
Die folgende Emit Methodenüberladung kann den ret
Opcode verwenden: