OpCodes.Ldelem_I Feld

Definition

Lädt das Element mit Typ native int bei einem angegebenen Arrayindex auf den oberen Rand des Auswertungsstapels als ein native int.

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

Feldwert

Hinweise

In der folgenden Tabelle sind das Hexadezimal- und Microsoft MSIL-Assemblyformat (Intermediate Language) der Anweisung zusammen mit einer kurzen Referenzzusammenfassung aufgeführt:

Format Assemblyformat Description
97 ldelem.i Lädt das Element mit Typ native int am index Anfang des Stapels als ein native int.

Das Übergangsverhalten des Stapels in sequenzieller Reihenfolge lautet:

  1. Ein Objektverweis array wird auf den Stapel verschoben.

  2. Ein Indexwert index wird auf den Stapel verschoben.

  3. index und array werden aus dem Stapel eingetaucht; der in der Position indexarray gespeicherte Wert wird nachschlagen.

  4. Der Wert wird auf den Stapel verschoben.

Die ldelem.i Anweisung lädt den Wert des Elements mit Index index (Typ native int) im nullbasierten eindimensionalen Array array und platziert es am Anfang des Stapels. Arrays sind Objekte und werden daher durch einen Wert vom Typ Odargestellt.

Der Rückgabewert lautet ldelem.inative int.

Beachten Sie, dass ganzzahlige Werte von weniger als 4 Byte auf int32 (nicht native int) erweitert werden, wenn sie in den Auswertungsstapel geladen werden.

NullReferenceException wird ausgelöst, wenn array es sich um einen Nullverweis handelt.

ArrayTypeMismatchException wird ausgelöst, wenn array keine Elemente des erforderlichen Typs enthalten sind.

IndexOutOfRangeException wird ausgelöst, wenn index es negativ ist oder größer als die Grenze von array.

Die folgende Emit Methodenüberladung kann den ldelem.i Opcode verwenden:

Gilt für: