Bagikan melalui


OpCodes.Initobj Bidang

Definisi

Menginisialisasi setiap bidang jenis nilai pada alamat tertentu ke referensi null atau 0 dari jenis primitif yang sesuai.

public: static initonly System::Reflection::Emit::OpCode Initobj;
public static readonly System.Reflection.Emit.OpCode Initobj;
 staticval mutable Initobj : System.Reflection.Emit.OpCode
Public Shared ReadOnly Initobj As OpCode 

Nilai Bidang

Keterangan

Tabel berikut mencantumkan format rakitan heksadesimal instruksi dan Microsoft Intermediate Language (MSIL), bersama dengan ringkasan referensi singkat:

Format Format Rakitan Deskripsi
< T > FE 15 initobj typeTok Menginisialisasi jenis nilai.

Perilaku transisi tumpukan, dalam urutan berurutan, adalah:

  1. Alamat jenis nilai yang akan diinisialisasi didorong ke tumpukan.

  2. Alamat muncul dari tumpukan; jenis nilai pada alamat yang ditentukan diinisialisasi sebagai jenis typeTok.

Instruksi initobj menginisialisasi setiap bidang dari jenis nilai yang ditentukan oleh alamat yang didorong (jenis native int, &, atau *) ke referensi null atau 0 dari jenis primitif yang sesuai. Setelah metode ini dipanggil, instans siap untuk metode konstruktor yang akan dipanggil. Jika typeTok adalah jenis referensi, instruksi ini memiliki efek yang sama dengan ldnull diikuti oleh stind.ref.

Tidak seperti Newobj, initobj tidak memanggil metode konstruktor. Initobj ditujukan untuk menginisialisasi jenis nilai, sementara newobj digunakan untuk mengalokasikan dan menginisialisasi objek.

Kelebihan metode Emit berikut dapat menggunakan opcode initobj:

Berlaku untuk