OpCodes.Isinst 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.
Vérifie si une référence d'objet (type O
) est une instance d'une classe particulière.
public: static initonly System::Reflection::Emit::OpCode Isinst;
public static readonly System.Reflection.Emit.OpCode Isinst;
staticval mutable Isinst : System.Reflection.Emit.OpCode
Public Shared ReadOnly Isinst 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 |
---|---|---|
75 <T > |
isinst class |
Teste si une référence d’objet est une instance de class , renvoyant une référence null ou une instance de cette classe ou interface. |
Le comportement transitoire de la pile, dans l’ordre séquentiel, est le suivant :
Une référence d’objet est envoyée sur la pile.
La référence d’objet est extraite de la pile et testée pour voir s’il s’agit d’un instance de la classe passée dans
class
.Le résultat (référence d’objet ou référence null) est envoyé dans la pile.
Class
est un jeton de métadonnées indiquant la classe souhaitée. Si la classe de l’objet en haut de la pile implémente class
(si class
est une interface) ou est une classe dérivée de class
(si class
est une classe régulière), elle est castée en type class
et le résultat est envoyé sur la pile, exactement comme si Castclass avait été appelé. Sinon, une référence null est envoyée sur la pile. Si la référence d’objet elle-même est une référence null, retourne également isinst
une référence null.
TypeLoadException est levée si la classe est introuvable. Cela est généralement détecté lorsque les instructions MSIL (Microsoft Intermediate Language) sont converties en code natif plutôt qu’au moment de l’exécution.
La surcharge de méthode suivante Emit peut utiliser l’opcode isinst
: