OpCodes.Leave_S 欄位

定義

結束程式碼的保護區,無條件地將控制權傳輸至目標指令 (簡短形式)。

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 

欄位值

備註

下表列出指示的十六進位和 Microsoft Intermediate Language (MSIL) 元件格式,以及簡短的參考摘要:

格式 元件格式 Description
德 <int8> leave.s target 結束受保護的程式代碼區域,簡短形式。

沒有為此指令指定的堆疊轉換行為。

指令 leave.s 會無條件地將控制權傳輸至傳遞的目標指令,此指令會依照目前的指示,以1位元組帶正負號的位移表示。

指令 leave.sbr 指令類似,但可用來結束 tryfiltercatch 區塊,而一般分支指令只能用於這類區塊中以傳輸控制件。 指令 leave.s 會清空評估堆疊,並確保執行適當的周圍 finally 區塊。

您無法使用 leave.s 指示結束 finally 區塊。 為了簡化例外狀況處理程式的程式代碼產生,它可以從 catch 區塊內使用 leave.s 指令將控制權傳送至相關聯 try 區塊內的任何指令。

如果指令有一或多個前置詞代碼,則控件只能傳送到這些前置詞的第一個。

下列 Emit 方法多載可以使用 leave.s opcode:

適用於