OpCodes.Leave_S Champ

Définition

Quitte une région protégée de code, en transférant sans condition le contrôle vers une instruction cible (forme abrégée).

public: static initonly System::Reflection::Emit::OpCode Leave_S;
public static readonly System.Reflection.Emit.OpCode Leave_S;
 staticval mutable Leave_S : System.Reflection.Emit.OpCode
Public Shared ReadOnly Leave_S As OpCode 

Valeur de champ

Remarques

Le tableau suivant répertorie le format d'assembly MSIL (Hexadécimal et Microsoft Intermediate Language) de l'instruction, ainsi qu'un bref résumé de référence :

Format Format d’assembly Description
DE <int8> leave.s target Quittez une zone protégée de code, sous forme abrégée.

Il n’existe aucun comportement de transition de pile spécifié pour cette instruction.

L’instruction leave.s transfère inconditionnellement le contrôle à l’instruction cible passée, représentée sous la forme d’un décalage signé de 1 octets à partir du début de l’instruction suivant l’instruction actuelle.

L’instruction leave.s est similaire à l’instruction br , mais elle peut être utilisée pour quitter un try, filterou catch bloquer, tandis que les instructions de branche ordinaires ne peuvent être utilisées que dans un tel bloc pour transférer le contrôle dans celui-ci. L’instruction leave.s vide la pile d’évaluation et garantit que les blocs environnants finally appropriés sont exécutés.

Vous ne pouvez pas utiliser d’instruction leave.s pour quitter un finally bloc. Pour faciliter la génération de code pour les gestionnaires d’exceptions, il est valide à partir d’un bloc catch pour utiliser une instruction pour transférer le leave.s contrôle vers n’importe quelle instruction dans le bloc associé try .

Si une instruction a un ou plusieurs codes de préfixe, le contrôle ne peut être transféré qu’à la première de ces préfixes.

La surcharge de méthode suivante Emit peut utiliser l’opcode leave.s :

S’applique à