OpCodes.Ldobj Поле

Определение

Копирует объект типа значения, на который указывает адрес в верхней части стека оценки.

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

Значение поля

Комментарии

В следующей таблице перечислены шестнадцатеричные и шестнадцатеричные и Microsoft формат сборки промежуточного языка (MSIL) инструкции, а также краткая сводка по ссылке:

Формат Формат сборки Description
71 <T> ldobj class Скопируйте экземпляр типа class значения в стек.

Переходное поведение стека в последовательном порядке:

  1. Адрес объекта типа значения передается в стек.

  2. Адрес подается из стека, а экземпляр на этом конкретном адресе просматривается.

  3. Значение объекта, хранящегося в этом адресе, передается в стек.

Инструкция ldobj используется для передачи типа значения в качестве параметра.

Инструкция ldobj копирует значение, указываемое на addrOfValObj (типа &, *или native int) в верхнюю часть стека. Количество скопированных байтов зависит от размера класса (как указано параметром class ). Параметр class — это маркер метаданных, представляющий тип значения.

Операция инструкции ldobj может быть изменена непосредственно предыдущей Volatile или Unaligned префиксной инструкцией.

TypeLoadException вызывается, если не удается найти класс. Обычно это обнаруживается при преобразовании инструкции Microsoft промежуточного языка (MSIL) в машинный код, а не во время выполнения.

Следующая Emit перегрузка метода может использовать ldobj код opcode:

Применяется к