Freigeben über


OpCodes.Ldloc-Feld

Lädt die lokale Variable an einem bestimmten Index in den Auswertungsstapel.

Namespace: System.Reflection.Emit
Assembly: mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public Shared ReadOnly Ldloc As OpCode
'Usage
Dim value As OpCode

value = OpCodes.Ldloc
public static readonly OpCode Ldloc
public:
static initonly OpCode Ldloc
public static final OpCode Ldloc
public static final var Ldloc : 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

FE 06 < unsigned int16 >

ldloc index

Lädt die lokale Variable am Index index in den Stapel.

Im Stapel laufen die folgenden Aktionen in der angegebenen Reihenfolge ab:

  1. Der Wert der lokalen Variablen am angegebenen Index wird auf dem Stapel abgelegt.

Die ldloc-Anweisung legt den Inhalt der lokalen Variablennummer am übergebenen Index auf dem Auswertungsstapel ab, wobei die lokalen Variablen von 0 aufwärts nummeriert sind. Lokale Variablen werden nur dann vor dem Eingeben der Methode mit 0 initialisiert, wenn das Initialisierungsflag für die Methode auf True festgelegt ist. Es sind 65.535 (2^16-1) lokale Variablen möglich (0-65.534). Index 65.535 ist nicht gültig, da mögliche Implementierungen mit einer 2-Byte-Ganzzahl sowohl den Index einer lokalen Variablen als auch die Gesamtanzahl der lokalen Variablen für eine angegebene Methode verfolgen. Bei einem gültigen Index von 65.535 wäre eine umfassendere ganze Zahl für die Verfolgung der Anzahl von lokalen Variablen in einer solchen Methode erforderlich.

Die ldloc.0-Anweisung, die ldloc.1-Anweisung, die ldloc.2-Anweisung und die ldloc.3-Anweisung ermöglichen eine effiziente Codierung für den Zugriff auf die ersten vier lokalen Variablen.

Der Typ der Variablen stimmt mit dem Typ der lokalen Variablen überein, der im Methodenheader angegeben wird. Siehe Partition I. Lokale Variablen mit weniger als 4 Bytes werden beim Laden in den Stapel auf den Typ int32 erweitert. Gleitkommawerte werden auf ihre systemeigene Größe erweitert (Typ F).

Die folgenden Überladungen der Emit-Methode verwenden den ldloc-Opcode:

  • ILGenerator.Emit(OpCode, LocalBuilder)

  • ILGenerator.Emit(OpCode, short)

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