OpCodes.Leave Bidang
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Keluar dari wilayah kode yang dilindungi, mentransfer kontrol tanpa syarat ke instruksi target tertentu.
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
Nilai Bidang
Keterangan
Tabel berikut mencantumkan format rakitan heksadesimal dan Microsoft Intermediate Language (MSIL) instruksi, bersama dengan ringkasan referensi singkat:
Format | Format Rakitan | Deskripsi |
---|---|---|
DD <int32 > |
Meninggalkan target |
Keluar dari wilayah kode yang dilindungi. |
Tidak ada perilaku transisi tumpukan yang ditentukan untuk instruksi ini.
leave
Instruksi secara tanpa syarat mentransfer kontrol ke instruksi target tertentu, direpresentasikan sebagai offset yang ditandatangani 4 byte dari awal instruksi mengikuti instruksi saat ini.
leave
Instruksinya mirip br
dengan instruksi, tetapi dapat digunakan untuk keluar try
dari blok , , filter
atau catch
sedangkan instruksi cabang biasa hanya dapat digunakan dalam blok seperti itu untuk mentransfer kontrol di dalamnya. Instruksi ini leave
mengosokkan tumpukan evaluasi dan memastikan bahwa blok sekitar finally
yang sesuai dijalankan.
Anda tidak dapat menggunakan leave
instruksi untuk keluar dari finally
blok. Untuk memudahkan pembuatan kode untuk penangan pengecualian, valid dari dalam blok tangkapan untuk menggunakan leave
instruksi untuk mentransfer kontrol ke instruksi apa pun dalam blok terkait try
.
Jika instruksi memiliki satu atau beberapa kode awalan, kontrol hanya dapat ditransfer ke awalan pertama ini.
Metode overload berikut Emit dapat menggunakan leave
opcode: