Compartir vía


OpCodes.Box Campo

Definición

Convierte un tipo de valor en una referencia a objeto (tipo 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 

Valor de campo

Comentarios

En la tabla siguiente se muestra el formato de ensamblado hexadecimal y lenguaje intermedio de Microsoft (MSIL), junto con un breve resumen de referencia:

Formato Formato de ensamblado Descripción
8C <T> Caja valTypeToken Convierta un tipo de valor (del tipo especificado en ) en valTypeTokenuna referencia de objeto true.

El comportamiento de transición de pila, en orden secuencial, es:

  1. Un tipo de valor se inserta en la pila.

  2. El tipo de valor se extrae de la pila; la box operación se realiza.

  3. Una referencia de objeto al tipo de valor "boxed" resultante se inserta en la pila.

Un tipo de valor tiene dos representaciones independientes dentro de Common Language Infrastructure (CLI):

  • Formulario "sin procesar" que se usa cuando un tipo de valor está incrustado dentro de otro objeto o en la pila.

  • Formulario "boxed", donde los datos del tipo de valor se encapsulan (boxed) en un objeto para que pueda existir como una entidad independiente.

La box instrucción convierte el tipo de valor 'raw' (unboxed) en una referencia de objeto (tipo O). Esto se logra creando un nuevo objeto y copiando los datos del tipo de valor en el objeto recién asignado. valTypeToken es un token de metadatos que indica el tipo del tipo de valor en la pila.

OutOfMemoryException se produce si no hay memoria suficiente para satisfacer la solicitud.

TypeLoadException se produce si no se encuentra la clase . Esto suele detectarse cuando el lenguaje intermedio de Microsoft (MSIL) se convierte en código nativo, en lugar de en tiempo de ejecución.

La sobrecarga del método siguiente Emit puede usar el box código de operación:

Se aplica a