Partager via


OpCodes.Stfld Champ

Définition

Remplace la valeur stockée dans le champ d'une référence d'objet ou d'un pointeur par une nouvelle valeur.

public: static initonly System::Reflection::Emit::OpCode Stfld;
public static readonly System.Reflection.Emit.OpCode Stfld;
 staticval mutable Stfld : System.Reflection.Emit.OpCode
Public Shared ReadOnly Stfld 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
7D <T> stfld field Remplace la valeur de l’objet field par une nouvelle valeur.

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

  1. Une référence d’objet ou un pointeur est poussé vers la pile.

  2. Une valeur est envoyée dans la pile.

  3. La valeur et la référence/pointeur d’objet sont extraites de la pile ; la valeur de field dans l’objet est remplacée par la valeur fournie.

L’instruction stfld remplace la valeur d’un champ d’un objet (type O) ou via un pointeur (type native int, &ou *) par une valeur donnée. Field est un jeton de métadonnées qui fait référence à une référence de membre de champ. L’instruction stfld peut avoir un préfixe de ou à la fois de Unaligned et Volatile.

NullReferenceException est levée si la référence d’objet ou le pointeur est une référence null et que le champ n’est pas statique.

MissingFieldException est levée si field est introuvable dans les métadonnées. Cela est généralement vérifié lorsque l’instruction MSIL (Microsoft Intermediate Language) est convertie en code natif, et non au moment de l’exécution.

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

S’applique à