Développer Réduire
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source
Ce sujet n'a pas encore été évalué - Évaluez ce sujet

OpCodes.Ldelem_I, champ

Charge l'élément avec le type native int à un index de tableau spécifié en haut de la pile d'évaluation en tant que native int.

Espace de noms :  System.Reflection.Emit
Assembly :  mscorlib (dans mscorlib.dll)
public static readonly OpCode Ldelem_I

Le tableau suivant répertorie le format d'assembly hexadécimal et MSIL (Microsoft Intermediate Language) de l'instruction et donne un bref résumé de référence :

Format

Format d'assembly

Description

97

ldelem.i

Charge l'élément avec le type native int à index en haut de la pile en tant que native int.

Le comportement de transition de la pile, dans un ordre séquentiel, est le suivant :

  1. Une référence d'objet array fait l'objet d'un push dans la pile.

  2. Une valeur d'index index fait l'objet d'un push dans la pile.

  3. index et array sont dépilés ; la valeur stockée à la position index dans array est recherchée.

  4. La valeur fait l'objet d'un push dans la pile.

L'instruction ldelem.i charge la valeur de l'élément avec l'index index (type native int) dans le tableau unidimensionnel de base zéro array et la place en haut de la pile. Les tableaux sont des objets ; ils sont donc représentés par une valeur de type O.

La valeur de retour pour ldelem.i est native int.

Notez que les valeurs entières inférieures à 4 octets sont étendues à int32 (et non pas native int) lorsqu'elles sont chargées dans la pile d'évaluation.

NullReferenceException est levé si array est une référence null.

ArrayTypeMismatchException est levé si array ne contient pas d'éléments du type requis.

IndexOutOfRangeException est levé si index est négatif ou supérieur à la limite de array.

La surcharge de méthode Emit suivante peut utiliser l'opcode ldelem.i :

  • ILGenerator.Emit(OpCode)

.NET Framework

Pris en charge dans : 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

.NET pour les applications du Windows Store

Pris en charge dans : Windows 8

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.
Cela vous a-t-il été utile ?
(1500 caractères restants)

Ajouts de la communauté

AJOUTER
© 2013 Microsoft. Tous droits réservés.