Comparteix a través de


OpCodes.Ldobj Campo

Definición

Copia en la parte superior de la pila de evaluación el objeto de tipo de valor al que señala una dirección.

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 

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
71 <T> ldobj class Copie la instancia del tipo class de valor en la pila.

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

  1. La dirección de un objeto de tipo de valor se inserta en la pila.

  2. La dirección se extrae de la pila y se busca la instancia de esa dirección concreta.

  3. El valor del objeto almacenado en esa dirección se inserta en la pila.

La ldobj instrucción se usa para pasar un tipo de valor como parámetro.

La ldobj instrucción copia el valor al addrOfValObj que apunta (de tipo &, *o native int) en la parte superior de la pila. El número de bytes copiados depende del tamaño de la clase (según lo especificado por el class parámetro ). El class parámetro es un token de metadatos que representa el tipo de valor.

La operación de la ldobj instrucción se puede modificar mediante una instrucción inmediatamente anterior Volatile o Unaligned de prefijo.

TypeLoadException se produce si no se encuentra la clase . Esto suele detectarse cuando la instrucción de 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 ldobj código de operación:

Se aplica a