OpCodes.Box Поле
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Преобразует тип значения в ссылку на объект (тип O).
public: static initonly System::Reflection::Emit::OpCode Box;
public static readonly System.Reflection.Emit.OpCode Box;
staticval mutable Box : System.Reflection.Emit.OpCode
Public Shared ReadOnly Box As OpCode
Значение поля
Комментарии
В следующей таблице перечислены шестнадцатеричные и шестнадцатеричные и Microsoft формат сборки промежуточного языка (MSIL) инструкции, а также краткая сводка по ссылке:
| Формат | Формат сборки | Description |
|---|---|---|
8C <T> |
Коробка valTypeToken |
Преобразуйте тип значения (типа, указанного в valTypeToken) в истинную ссылку на объект. |
Переходное поведение стека в последовательном порядке:
Тип значения передается в стек.
Тип значения подается из стека;
boxвыполняется операция.Ссылка на объект результирующего типа значения "boxed" передается в стек.
Тип значения имеет два отдельных представления в инфраструктуре общего языка (CLI):
Форма "необработанный", используемая при внедрении типа значения в другой объект или в стек.
Форма "boxed", в которой данные в типе значения упаковываются (прямоугольные) в объект, чтобы он может существовать в качестве независимой сущности.
Инструкция box преобразует тип значения raw (unboxed) в ссылку на объект (тип O). Это достигается путем создания нового объекта и копирования данных из типа значения в вновь выделенный объект.
valTypeToken — это маркер метаданных, указывающий тип типа значения в стеке.
OutOfMemoryException вызывается, если недостаточно памяти для удовлетворения запроса.
TypeLoadException вызывается, если не удается найти класс. Обычно это обнаруживается при преобразовании Microsoft промежуточного языка (MSIL) в машинный код, а не во время выполнения.
Следующая Emit перегрузка метода может использовать box код opcode: