OpCodes.Ret Campo
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Regresa del método actual e inserta un valor devuelto (si existe) desde la pila de evaluación del destinatario de la llamada en la pila de evaluación del llamador.
public: static initonly System::Reflection::Emit::OpCode Ret;
public static readonly System.Reflection.Emit.OpCode Ret;
staticval mutable Ret : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ret As OpCode
Valor de campo
Comentarios
En la tabla siguiente se muestra el formato de ensamblado hexadecimal y del lenguaje intermedio de Microsoft (MSIL), junto con un breve resumen de referencia:
Formato | Formato de ensamblado | Descripción |
---|---|---|
2A | Ret | Devuelve del método , posiblemente devolviendo un valor. |
El comportamiento transitorio de la pila, en orden secuencial, es:
El valor devuelto se extrae de la pila de evaluación del destinatario.
El valor devuelto obtenido en el paso 1 se inserta en la pila de evaluación del autor de la llamada.
Si el valor devuelto no está presente en la pila de evaluación del destinatario, no se devuelve ningún valor (no se devuelve ningún comportamiento de transición de pila para el método de llamada o llamador).
El tipo del valor devuelto, si existe, del método actual determina el tipo de valor que se va a capturar desde la parte superior de la pila y se copia en la pila del método que llamó al método actual. La pila de evaluación del método actual debe estar vacía, excepto para que se devuelva el valor.
La ret
instrucción no se puede usar para transferir el control fuera de untry
bloque , filter
catch
, o finally
. Desde dentro de o try
catch
, use la Leave instrucción con un destino de una ret
instrucción que está fuera de todos los bloques de excepciones envolventes. Dado que los filter
bloques y finally
forman parte lógicamente del control de excepciones y no del método en el que se inserta su código, las instrucciones del lenguaje intermedio de Microsoft (MSIL) generadas correctamente no realizan una devolución de método desde dentro de o filter
finally
.
La sobrecarga del método siguiente Emit puede usar el ret
código de operación: