Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Lädt die Adresse des Arrayelements an einem angegebenen Arrayindex als Typ & (verwalteter Zeiger) an die oberste Position des Auswertungsstapels.
Namespace: System.Reflection.Emit
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Shared ReadOnly Ldelema As OpCode
'Usage
Dim value As OpCode
value = OpCodes.Ldelema
public static readonly OpCode Ldelema
public:
static initonly OpCode Ldelema
public static final OpCode Ldelema
public static final var Ldelema : OpCode
Hinweise
In der folgenden Tabelle werden das hexadezimale und das Assemblyformat der MSIL (Microsoft Intermediate Language) jeweils mit einer Kurzreferenz aufgeführt:
Format |
Assemblyformat |
Beschreibung |
|---|---|---|
8F < T > |
ldelema class |
Lädt die Adresse des Arrayelements am index als Typ & (verwalteter Zeiger) an die oberste Position des Auswertungsstapels. |
Im Stapel laufen die folgenden Aktionen in der angegebenen Reihenfolge ab:
Der Objektverweis array wird auf dem Stapel abgelegt.
Ein Indexwert index wird auf dem Stapel abgelegt.
Der index und das array werden vom Stapel geholt. Die an der Position index im array gespeicherte Adresse wird gesucht.
Die Adresse wird auf dem Stapel abgelegt.
Mit ldelema wird die Adresse eines Objekts an einem bestimmten Index in einem Array von Objekten (vom Typ class) abgerufen. Die ldelema-Anweisung lädt die Adresse des Werts am Index index (Typ natural int) im nullbasierten eindimensionalen Array array und legt sie an oberster Position auf dem Stapel ab. Arrays sind Objekte und können daher als Wert vom Typ O dargestellt werden. Der Wert muss vom Typ class sein, die mit der Anweisung übergeben wurde.
Der Rückgabewert für ldelema ist ein verwalteter Zeiger (Typ &).
Beachten Sie, dass Ganzzahlwerte mit weniger als 4 Bytes beim Laden in den Auswertungsstapel auf int32 (nicht natural int) erweitert werden.
NullReferenceException wird ausgelöst, wenn array ein NULL-Verweis ist.
ArrayTypeMismatchException wird ausgelöst, wenn array keine Elemente des erforderlichen Typs enthält.
IndexOutOfRangeException wird ausgelöst, wenn der index negativ oder größer als die Begrenzung von array ist.
Die folgende Überladung der Emit-Methode verwendet den ldelema-Opcode:
- ILGenerator.Emit(OpCode, Type)
Plattformen
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
Siehe auch
Referenz
OpCodes-Klasse
OpCodes-Member
System.Reflection.Emit-Namespace