Share via


OpCodes.Ret Pole

Definice

Vrátí hodnotu z aktuální metody a nasdílí návratovou hodnotu (pokud je k dispozici) z vyhodnocovacího zásobníku volané do testovacího zásobníku volajícího.

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 

Hodnota pole

Poznámky

Následující tabulka uvádí hexadecimální formát sestavení instrukce a formát sestavení MSIL (Microsoft Intermediate Language) spolu se stručným souhrnem referenčních informací:

Formát Formát sestavení Description
2A Vv Vrátí hodnotu z metody, případně vrátí hodnotu.

Přechodné chování zásobníku v sekvenčním pořadí je:

  1. Vrácená hodnota se vyskočila ze zásobníku vyhodnocení volaného.

  2. Vrácená hodnota získaná v kroku 1 se nasdílí do zásobníku vyhodnocení volajícího.

Pokud návratová hodnota není v zásobníku vyhodnocení volaných, nevrátí se žádná hodnota (žádné chování přechodu zásobníku pro volanou ani volající metodu).

Typ návratové hodnoty, pokud existuje, aktuální metody určuje typ hodnoty, která má být načtena z horní části zásobníku a zkopírována do zásobníku metody, která volala aktuální metodu. Zásobník vyhodnocení pro aktuální metodu musí být prázdný s výjimkou hodnoty, která se má vrátit.

Instrukce ret nelze použít k přenosu řízení ztry bloku , filtercatch, nebo finally . V rámci try nebo catchpoužijte Leave instrukce s cílem ret instrukce, která je mimo všechny ohraničující bloky výjimek. Vzhledem k tomu, filter že bloky a finally jsou logicky součástí zpracování výjimek, a ne metodou, ve které je jejich kód vložen, správně generované instrukce jazyka MSIL (Microsoft Intermediate Language) neprovádějí metodu vrácení z nebo filterfinally.

Následující Emit přetížení metody může použít ret opcode:

Platí pro