Compartir a través de


OpCodes.Stloc Campo

Definición

Extrae el valor actual de la parte superior de la pila de evaluación y lo almacena en la lista de variables locales en un índice especificado.

public: static initonly System::Reflection::Emit::OpCode Stloc;
public static readonly System.Reflection.Emit.OpCode Stloc;
 staticval mutable Stloc : System.Reflection.Emit.OpCode
Public Shared ReadOnly Stloc 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
FE 0E <unsigned int16> stloc index Extrae un valor de la pila y lo almacena en la variable indexlocal .

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

  1. Un valor se extrae de la pila y se coloca en la variable indexlocal .

La stloc instrucción extrae el valor superior de la pila de evaluación y lo mueve al número indexde variable local, donde las variables locales se numeran 0 en adelante. El tipo del valor debe coincidir con el tipo de la variable local tal como se especifica en la firma local del método actual.

Almacenar en variables locales que contienen un valor entero inferior a 4 bytes de longitud trunca el valor a medida que se mueve de la pila a la variable local. Los valores de punto flotante se redondean de su tamaño nativo (tipo F) al tamaño asociado al argumento .

Las instrucciones correctas del lenguaje intermedio de Microsoft (MSIL) requieren que index sea un índice local válido. Para la stloc instrucción, index debe estar en el intervalo comprendido entre 0 y 65534 inclusive (en concreto, 65535 no es válido). La razón para excluir 65535 es pragmática: las implementaciones probables usarán un entero de 2 bytes para realizar un seguimiento del índice de un local, así como el número total de variables locales para un método determinado. Si se hubiera hecho válido un índice de 65535, requeriría un entero más amplio para realizar un seguimiento del número de variables locales de este tipo de método.

Las sobrecargas de método siguientes Emit pueden usar el stloc código de operación:

Se aplica a