OpCodes.Unbox_Any Поле
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Преобразует прямоугольное представление типа, указанного в инструкции, в его несоотделенные формы.
public: static initonly System::Reflection::Emit::OpCode Unbox_Any;
public static readonly System.Reflection.Emit.OpCode Unbox_Any;
staticval mutable Unbox_Any : System.Reflection.Emit.OpCode
Public Shared ReadOnly Unbox_Any As OpCode
Значение поля
Комментарии
В следующей таблице перечислены шестнадцатеричные и шестнадцатеричные и Microsoft формате сборки промежуточного языка (MSIL) инструкции, а также краткая сводка по ссылке:
| Формат | Формат сборки | Description |
|---|---|---|
A5 <T> |
unbox.any typeTok |
Извлеките данные из objполя. |
Переходное поведение стека в последовательном порядке:
Ссылка на
objобъект отправляется в стек.Ссылка на объект подается из стека и распакована к типу, указанному в инструкции.
Результирующая ссылка на объект или тип значения помещается в стек.
При применении к прямоугольной форме типа значения инструкция извлекает значение, unbox.any содержащееся внутри obj (типаO), и поэтому эквивалентно unbox следовать.ldobj
При применении к ссылочного типа инструкция имеет тот же эффект, unbox.any что castclasstypeTokи .
Если операнд typeTok является параметром универсального типа, поведение среды выполнения определяется типом, указанным для этого параметра универсального типа.
InvalidCastException вызывается, если obj тип не является прямоугольникой.
NullReferenceException вызывается, если obj является пустой ссылкой.
Следующая Emit перегрузка метода может использовать unbox.any код opcode: