OpCodes.Box 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.
Convertit un type valeur en référence d'objet (type O
).
public: static initonly System::Reflection::Emit::OpCode Box;
public static readonly System.Reflection.Emit.OpCode Box;
staticval mutable Box : System.Reflection.Emit.OpCode
Public Shared ReadOnly Box 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 |
---|---|---|
8C <T > |
Boîte valTypeToken |
Convertissez un type valeur (du type spécifié dans ) en valTypeToken référence d’objet true. |
Le comportement transitionnel de la pile, dans l’ordre séquentiel, est le suivant :
Un type de valeur est envoyé dans la pile.
Le type de valeur est extrait de la pile ; l’opération
box
est effectuée.Une référence d’objet au type de valeur « boxed » résultant est envoyée dans la pile.
Un type valeur a deux représentations distinctes au sein de l’infrastructure cli (Common Language Infrastructure) :
Formulaire « brut » utilisé lorsqu’un type valeur est incorporé dans un autre objet ou dans la pile.
Formulaire « boxed », où les données du type valeur sont encapsulées (encadrées) dans un objet afin qu’elles puissent exister en tant qu’entité indépendante.
L’instruction box
convertit le type de valeur « raw » (unboxed) en référence d’objet (type O
). Pour ce faire, créez un objet et copiez les données du type valeur dans l’objet nouvellement alloué.
valTypeToken
est un jeton de métadonnées indiquant le type du type de valeur sur la pile.
OutOfMemoryException est levée si la mémoire est insuffisante pour répondre à la demande.
TypeLoadException est levée si la classe est introuvable. Cela est généralement détecté lorsque Microsoft Intermediate Language (MSIL) est converti en code natif, plutôt qu’au moment de l’exécution.
La surcharge de méthode suivante Emit peut utiliser l’opcode box
: