OpCodes.Ldelem_I2 Pole
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Načte element s typem int16
v zadaném indexu pole do horní části zkušebního zásobníku int32
jako .
public: static initonly System::Reflection::Emit::OpCode Ldelem_I2;
public static readonly System.Reflection.Emit.OpCode Ldelem_I2;
staticval mutable Ldelem_I2 : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ldelem_I2 As OpCode
Hodnota pole
Poznámky
Následující tabulka uvádí hexadecimální formát sestavení instrukce a formát sestavení MSIL (Microsoft Intermediate Language) spolu se stručným souhrnem referenčních informací:
Formát | Formát sestavení | Description |
---|---|---|
92 | ldelem.i2 | Načte prvek s typem int16 v index horní části zásobníku jako int32 . |
Přechodné chování zásobníku v sekvenčním pořadí je:
Odkaz na
array
objekt je nasdílený do zásobníku.Do zásobníku se nasdílí hodnota
index
indexu.index
aarray
vyskakují ze zásobníku. Vyhledá se hodnota uložená na poziciindex
varray
.Hodnota se nasdílí do zásobníku.
Instrukce ldelem.i2
načte hodnotu elementu s indexem index
(typem native int
) v jednorozměrném poli array
založeném na nule a umístí ji do horní části zásobníku. Pole jsou objekty, a proto jsou reprezentovány hodnotou typu O
.
Vrácená hodnota pro ldelem.i2
je int16
.
Všimněte si, že celočíselné hodnoty menší než 4 bajty se při načtení do zásobníku vyhodnocení rozšíří na int32
(ne native int
).
NullReferenceException je vyvolán, pokud array
je odkaz null.
ArrayTypeMismatchException je vyvolán, pokud array
neobsahuje prvky požadovaného typu.
IndexOutOfRangeException je vyvolán, pokud index
je záporná nebo větší než mez array
.
Následující Emit přetížení metody může použít ldelem.i2
opcode: