OpCodes.Ldelema Campo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Carica l'indirizzo dell'elemento di matrice in corrispondenza di un indice di matrice specificato all'inizio dello stack di valutazione come tipo &
(puntatore gestito).
public: static initonly System::Reflection::Emit::OpCode Ldelema;
public static readonly System.Reflection.Emit.OpCode Ldelema;
staticval mutable Ldelema : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ldelema As OpCode
Valore del campo
Commenti
La tabella seguente elenca il formato dell'assembly esadecimale e Microsoft Intermediate Language (MSIL), insieme a un breve riepilogo di riferimento:
Formato | Formato assembly | Descrizione |
---|---|---|
8F <T > |
ldelema class |
Carica l'indirizzo dell'elemento matrice nella index parte superiore dello stack di valutazione come tipo & (puntatore gestito). |
Il comportamento di transizione dello stack, in ordine sequenziale, è:
Un riferimento
array
all'oggetto viene eseguito il push nello stack.Viene eseguito il push di un valore
index
di indice nello stack.index
earray
vengono visualizzati dallo stack. L'indirizzo archiviato in posizioneindex
vienearray
cercato.L'indirizzo viene eseguito il push nello stack.
Viene ldelema
usato per recuperare l'indirizzo di un oggetto in corrispondenza di un determinato indice in una matrice di oggetti (di tipo class
). L'istruzione ldelema
carica l'indirizzo del valore in corrispondenza dell'indice index
(tipo native int
) nella matrice array
unidimensionale basata su zero e la inserisce nella parte superiore dello stack. Le matrici sono oggetti e quindi rappresentati da un valore di tipo O
. Il valore deve essere di tipo class
passato con l'istruzione.
Il valore restituito per ldelema
è un puntatore gestito (tipo &
).
Si noti che i valori interi di meno di 4 byte vengono estesi a int32
(non native int
) quando vengono caricati nello stack di valutazione.
NullReferenceException viene generato se array
è un riferimento Null.
ArrayTypeMismatchException viene generato se array
non contiene elementi del tipo richiesto.
IndexOutOfRangeException viene generato se index
è negativo o maggiore del limite di array
.
L'overload del metodo seguente Emit può usare il ldelema
codice opcode: