OpCodes.Leave フィールド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
コードの保護領域を終了し、制御を特定のターゲット命令に無条件で転送します。
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
フィールド値
注釈
次の表に、命令の 16 進数と Microsoft Intermediate Language (MSIL) アセンブリ形式と、簡単なリファレンスの概要を示します。
形式 | アセンブリ形式 | 説明 |
---|---|---|
Dd <int32 > |
残す target |
コードの保護された領域を終了します。 |
この命令にはスタック遷移動作が指定されません。
命令は leave
、現在の命令に続く命令の先頭からの 4 バイト符号付きオフセットとして表される、特定のターゲット命令に無条件に制御を転送します。
命令はleave
命令にbr
似ていますが、または catch
ブロックを終了try
filter
するために使用できますが、通常の分岐命令は、そのようなブロック内で制御を転送する場合にのみ使用できます。 命令によって leave
評価スタックが空になり、適切な周囲 finally
のブロックが確実に実行されます。
命令を leave
使用してブロックを finally
終了することはできません。 例外ハンドラーのコード生成を容易にするために、catch ブロック内から命令を leave
使用して、関連付けられている try
ブロック内の任意の命令に制御を転送することが有効です。
命令に 1 つ以上のプレフィックス コードがある場合、制御は、これらのプレフィックスの最初にのみ転送できます。
次 Emit のメソッド オーバーロードでは、オペコードを leave
使用できます。
適用対象
.NET