Sdílet prostřednictvím


OpCodes.Ldelem_U2 Pole

Definice

Načte element s typem unsigned int16 v zadaném indexu pole do horní části zkušebního zásobníku int32jako .

public: static initonly System::Reflection::Emit::OpCode Ldelem_U2;
public static readonly System.Reflection.Emit.OpCode Ldelem_U2;
 staticval mutable Ldelem_U2 : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ldelem_U2 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
93 ldelem.u2 Načte prvek s typem unsigned int16 v indexu do 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 nasdílený do zásobníku.

  2. Do zásobníku se nasdílí hodnota index indexu.

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

  4. Hodnota se nasdílí do zásobníku.

Instrukce ldelem.u2 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.u2 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.u2 opcode:

Platí pro