Sdílet prostřednictvím


OpCodes.Ldelem_I4 Pole

Definice

Načte element s typem int32 v zadaném indexu pole do horní části zásobníku vyhodnocení jako int32.

public: static initonly System::Reflection::Emit::OpCode Ldelem_I4;
public static readonly System.Reflection.Emit.OpCode Ldelem_I4;
 staticval mutable Ldelem_I4 : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ldelem_I4 As OpCode 

Hodnota pole

Poznámky

Následující tabulka uvádí šestnáctkový formát sestavení instrukce a formát sestavení MSIL (Microsoft Intermediate Language) spolu se stručným přehledem referencí:

Formát Formát sestavení Description
94 ldelem.i4 Načte prvek s typem int32 v index horní části zásobníku int32jako .

Přechodné chování zásobníku v sekvenčním pořadí je:

  1. Odkaz na array objekt je vložen do zásobníku.

  2. Hodnota index indexu se vloží do zásobníku.

  3. index a array vyjdou ze zásobníku. Vyhledá se hodnota uložená na pozici index v array .

  4. Hodnota se vloží do zásobníku.

Instrukce ldelem.i4 načte hodnotu prvku s indexem index (typ native int) v jednorozměrném poli array založeném na nule a umístí ji na horní část zásobníku. Pole jsou objekty, a proto jsou reprezentované hodnotou typu O.

Vrácená hodnota pro ldelem.i4 je int32.

Všimněte si, že celočíselné hodnoty menší než 4 bajty jsou při načtení do vyhodnocovacího zásobníku rozšířeny 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 hodnoty array.

Následující Emit přetížení metody může použít ldelem.i4 opcode:

Platí pro