OpCodes.Leave Pole

Definice

Ukončí chráněnou oblast kódu a bezpodmínečně převede kontrolu na konkrétní cílovou instrukci.

public: static initonly System::Reflection::Emit::OpCode Leave;
public static readonly System.Reflection.Emit.OpCode Leave;
 staticval mutable Leave : System.Reflection.Emit.OpCode
Public Shared ReadOnly Leave As OpCode 

Hodnota pole

Poznámky

Následující tabulka uvádí šestnáctkový formát sestavení jazyka MSIL (Intermediate Language) a Microsoft s stručným přehledem referenčních informací:

Formát Formát sestavení Description
DD <int32> Opustit target Ukončí chráněnou oblast kódu.

Pro tuto instrukci není zadané žádné chování přechodu zásobníku.

Instrukce leave bezpodmínečně přenese kontrolu na konkrétní cílovou instrukci reprezentovanou jako posun se 4 bajty od začátku instrukce následující po aktuální instrukci.

Instrukce leave je podobná pokynu br , ale lze jej použít k ukončení try, filternebo catch bloku, zatímco běžné větev instrukce lze použít pouze v takovém bloku k přenosu řízení uvnitř. Instrukce leave vyprázdní zásobník vyhodnocení a zajistí, že se spustí příslušné okolní finally bloky.

K ukončení leave bloku nelze použít finally pokyn. Aby se usnadnilo generování kódu pro obslužné rutiny výjimek, je platné z bloku catch, aby se použila leave instrukce k přenosu řízení na všechny instrukce v přidruženém try bloku.

Pokud má instrukce jeden nebo více kódů předpon, lze ovládací prvek přenést pouze na první z těchto předpon.

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

Platí pro