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