OpCodes.Leave Pole
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Ukončí chráněnou oblast kódu a bezpodmínečně přenese řízení 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í 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 |
|---|---|---|
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řenáší kontrolu na konkrétní cílovou instrukci, reprezentovanou jako 4-bajtový podepsaný posun od začátku instrukce za aktuální instrukcí.
Instrukce leave je podobná pokynu br , ale lze ji použít k ukončení trybloku , filternebo catch , zatímco běžné instrukce větve lze použít pouze v takovém bloku k přenosu řízení v něm. Instrukce leave vyprázdní zásobník vyhodnocení a zajistí, že se spustí příslušné okolní finally bloky.
K ukončení finally bloku nelze použít leave instrukce. Pro usnadnění generování kódu pro obslužné rutiny výjimek je platné z bloku catch použít leave instrukce k přenosu řízení na jakékoli instrukce v rámci přidruženého 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 mohou použít leave opcode: