OpCodes.Ret Champ
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Effectue un retour à partir de la méthode actuelle en exécutant un push d'une valeur de retour (si elle existe) à partir de la pile d'évaluation de l'appelé dans celle de l'appelant.
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
Valeur de champ
Remarques
Le tableau suivant répertorie le format d’assembly MSIL et hexadécimal de l’instruction, ainsi qu’un bref résumé des références :
Format | Format d’assembly | Description |
---|---|---|
2A | Ret | Retourne à partir de la méthode, renvoyant éventuellement une valeur. |
Le comportement transitoire de la pile, dans l’ordre séquentiel, est le suivant :
La valeur de retour est extraite de la pile d’évaluation appelée.
La valeur de retour obtenue à l’étape 1 est envoyée à la pile d’évaluation de l’appelant.
Si la valeur de retour n’est pas présente sur la pile d’évaluation appelée, aucune valeur n’est retournée (aucun comportement de transition de pile pour la méthode appelée ou appelante).
Le type de la valeur de retour, le cas échéant, de la méthode actuelle détermine le type de valeur à extraire du haut de la pile et à copier sur la pile de la méthode qui a appelé la méthode actuelle. La pile d’évaluation de la méthode actuelle doit être vide, à l’exception de la valeur à retourner.
L’instruction ret
ne peut pas être utilisée pour transférer le contrôle à partir d’untry
bloc, filter
, catch
ou finally
. À partir d’un try
ou catch
, utilisez l’instruction Leave avec une destination d’une ret
instruction qui se trouve en dehors de tous les blocs d’exception englobants. Étant donné que les filter
blocs et finally
font logiquement partie de la gestion des exceptions et non de la méthode dans laquelle leur code est incorporé, les instructions MSIL (Microsoft Intermediate Language) correctement générées n’effectuent pas de retour de méthode à partir d’un filter
ou finally
.
La surcharge de méthode suivante Emit peut utiliser l’opcode ret
: