OpCodes.Ret フィールド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
現在のメソッドから戻り、呼び出し先の評価スタックから呼び出し元の評価スタックに戻り値 (存在する場合) をプッシュします。
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
フィールド値
注釈
次の表に、命令の 16 進数と Microsoft Intermediate Language (MSIL) アセンブリ形式と、簡単なリファレンスの概要を示します。
形式 | アセンブリ形式 | 説明 |
---|---|---|
2A | Ret | メソッドからを返します。値を返す可能性があります。 |
スタック遷移の動作は、順番に次のようになります。
戻り値は、呼び出し先の評価スタックからポップされます。
手順 1 で取得した戻り値は、呼び出し元の評価スタックにプッシュされます。
戻り値が呼び出し先の評価スタックに存在しない場合、値は返されません (呼び出し先メソッドまたは呼び出し元メソッドのスタック遷移動作はありません)。
現在のメソッドの戻り値の型 (存在する場合) は、スタックの先頭からフェッチされ、現在のメソッドを呼び出したメソッドのスタックにコピーされる値の型を決定します。 現在のメソッドの評価スタックは、返される値を除いて空である必要があります。
命令をret
使用して、または finally
ブロックから制御をtry
filter
catch
転送することはできません。 または catch
内try
から、 命令をLeave、外側のすべての例外ブロックの外側にある命令のret
宛先と共に使用します。
filter
ブロックと finally
ブロックは論理的には例外処理の一部であり、コードが埋め込まれているメソッドではないので、正しく生成された Microsoft Intermediate Language (MSIL) 命令では、 または finally
内filter
からメソッドを返す操作は実行されません。
次 Emit のメソッド オーバーロードでは、オペコードを ret
使用できます。
適用対象
.NET