Udostępnij za pośrednictwem


OpCodes.Initobj Pole

Definicja

Inicjuje każde pole typu wartości pod określonym adresem do odwołania o wartości null lub 0 odpowiedniego typu pierwotnego.

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 

Wartość pola

Uwagi

W poniższej tabeli wymieniono format zestawu szesnastkowy i microsoft intermediate language (MSIL) instrukcji wraz z krótkim podsumowaniem referencyjnym:

Format Format zestawu Opis
FE 15 <T> initobj typeTok Inicjuje typ wartości.

Zachowanie przejściowe stosu w kolejności sekwencyjnej jest następujące:

  1. Adres typu wartości do zainicjowania jest wypychany do stosu.

  2. Adres jest zwinięty ze stosu; typ wartości pod określonym adresem jest inicjowany jako typ typeTok.

Instrukcja initobj inicjuje każde pole typu wartości określonego przez wypchnięty adres (typu native int, &lub *) do odwołania o wartości null lub 0 odpowiedniego typu pierwotnego. Po wywołaniu tej metody wystąpienie jest gotowe do wywołania metody konstruktora. Jeśli typeTok jest typem odwołania, ta instrukcja ma taki sam efekt jak ldnull następnie stind.ref.

W przeciwieństwie do Newobj, initobj nie wywołuje metody konstruktora. Initobj jest przeznaczony do inicjowania typów wartości, podczas gdy newobj służy do przydzielania i inicjowania obiektów.

Następujące przeciążenie metody Emit może używać initobj opcode:

Dotyczy