Partager via


OpCodes.Ldvirtftn Champ

Définition

Exécute un push d'un pointeur non managé (type native int) sur le code natif implémentant une méthode virtuelle spécifique associée à un objet spécifié dans la pile d'évaluation.

public: static initonly System::Reflection::Emit::OpCode Ldvirtftn;
public static readonly System.Reflection.Emit.OpCode Ldvirtftn;
 staticval mutable Ldvirtftn : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ldvirtftn 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
FE 07 <T> ldvirtftn method Envoie le pointeur vers la méthode method virtuelle d’un objet sur la pile.

Le comportement transitoire de la pile, dans l’ordre séquentiel, est le suivant :

  1. Une référence d’objet est envoyée sur la pile.

  2. La référence d’objet est extraite de la pile et l’adresse du point d’entrée à la méthode (comme spécifié par le jeton methodde métadonnées ) est recherchée.

  3. Le pointeur vers method est poussé sur la pile.

Le pointeur non managé résultant envoyé sur la pile par l’instruction peut être appelé à l’aide de l’instruction ldvirtftnCalli si elle fait référence à une méthode managée (ou un stub qui passe du code managé au code non managé).

Le pointeur non managé pointe vers le code natif à l’aide de la convention d’appel CLR. Ce pointeur de méthode ne doit pas être passé au code natif non managé en tant que routine de rappel.

La surcharge de méthode suivante Emit peut utiliser l’opcode ldvirtftn :

S’applique à