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 значения в стек. |
Переходное поведение стека в последовательном порядке:
Адрес объекта типа значения передается в стек.
Адрес подается из стека, а экземпляр на этом конкретном адресе просматривается.
Значение объекта, хранящегося в этом адресе, передается в стек.
Инструкция ldobj используется для передачи типа значения в качестве параметра.
Инструкция ldobj копирует значение, указываемое на addrOfValObj (типа &, *или native int) в верхнюю часть стека. Количество скопированных байтов зависит от размера класса (как указано параметром class ). Параметр class — это маркер метаданных, представляющий тип значения.
Операция инструкции ldobj может быть изменена непосредственно предыдущей Volatile или Unaligned префиксной инструкцией.
TypeLoadException вызывается, если не удается найти класс. Обычно это обнаруживается при преобразовании инструкции Microsoft промежуточного языка (MSIL) в машинный код, а не во время выполнения.
Следующая Emit перегрузка метода может использовать ldobj код opcode: