Partager via


OpCodes.Ldarga Champ

Définition

Charge une adresse d'argument dans la pile d'évaluation.

public: static initonly System::Reflection::Emit::OpCode Ldarga;
public static readonly System.Reflection.Emit.OpCode Ldarga;
 staticval mutable Ldarga : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ldarga 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 0A <unsigned int16> ldarga index Récupérez l’adresse de l’argument indexé par index.

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

  1. L’adresse addr de l’argument indexé par index est poussée vers la pile.

L’instruction ldarga extrait l’adresse (de type &) de l’argument indexé par index, où les arguments sont indexés à partir de 0. L’adresse addr est toujours alignée sur une limite naturelle sur l’ordinateur cible. L’argument étant stocké dans la mémoire non managée, la valeur de retour peut être convertie en pointeur non managé sans épinglage.

Pour les procédures qui prennent une liste d’arguments de longueur variable, l’instruction ldarga ne peut être utilisée que pour les arguments fixes initiaux, et non ceux de la partie variable de la signature.

ldarga est utilisé pour le passage de paramètres by-ref. Pour d’autres cas, Ldarg et Starg doit être utilisé.

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

S’applique à