OpCodes.Ldelem_I1 Feld

Definition

Lädt das Element mit dem Typ int8 an einem angegebenen Arrayindex als int32 an die oberste Position des Auswertungsstapels.

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

Feldwert

Hinweise

In der folgenden Tabelle sind das Hexadezimal- und MSIL-Assemblyformat (Microsoft Intermediate Language) der Anweisung sowie eine kurze Referenzzusammenfassung aufgeführt:

Format Assemblyformat BESCHREIBUNG
90 ldelem.i1 Lädt das -Element mit dem Typ int8 at index am oberen Rand des Stapels als .int32

Das Stapelübergangsverhalten in sequenzieller Reihenfolge lautet:

  1. Ein Objektverweis array wird auf den Stapel gepusht.

  2. Ein Indexwert index wird auf den Stapel gepusht.

  3. index und array werden aus dem Stapel geknallt. Der an position index in array gespeicherte Wert wird nachgeschlagen.

  4. Der Wert wird auf den Stapel gepusht.

Die ldelem.i1 -Anweisung lädt den Wert des Elements mit index index (Typ native int) in das nullbasierte eindimensionale Array array und platziert ihn am anfang des Stapels. Arrays sind Objekte und werden daher durch einen Wert vom Typ Odargestellt.

Der Rückgabewert für ldelem.i1 ist int8.

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

NullReferenceException wird ausgelöst, wenn array ein NULL-Verweis ist.

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

IndexOutOfRangeException wird ausgelöst, wenn index negativ oder größer als der Grenzwert von arrayist.

Die folgende Emit Methodenüberladung kann den ldelem.i1 opcode verwenden:

Gilt für: