OpCodes.Stfld-Feld
Ersetzt den im Feld eines Objektsverweises oder Zeigers gespeicherten Wert durch einen neuen Wert.
Namespace: System.Reflection.Emit
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Shared ReadOnly Stfld As OpCode
'Usage
Dim value As OpCode
value = OpCodes.Stfld
public static readonly OpCode Stfld
public:
static initonly OpCode Stfld
public static final OpCode Stfld
public static final var Stfld : 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 |
---|---|---|
7D <T> |
stfld field |
Ersetzt den Wert in field des Objekts durch einen neuen Wert. |
Im Stapel laufen die folgenden Aktionen in der angegebenen Reihenfolge ab:
Ein Objektverweis oder Zeiger wird auf dem Stapel abgelegt.
Ein Wert wird auf dem Stapel abgelegt.
Der Wert und der Objektsverweis bzw. Zeiger werden vom Stapel geholt. Der Wert von field im Objekt wird mit dem angegebenen Wert ersetzt.
Die stfld-Anweisung ersetzt den Wert eines Felds in einem Objekt (Typ O) oder über einen Zeiger (Typ natural int, & oder *) durch einen angegebenen Wert. Field ist ein Metadatentoken, das auf einen Feldmemberverweis verweist. Der stfld-Anweisung kann das Unaligned-Präfix und/oder das Volatile-Präfix vorangestellt sein.
Wenn der Objektverweis bzw. der Zeiger den Wert NULL aufweist und das Feld nicht statisch ist, wird NullReferenceException ausgelöst.
Wenn field in den Metadaten nicht gefunden werden kann, wird MissingFieldException ausgelöst. Dies wird normalerweise nicht zur Laufzeit überprüft, sondern beim Konvertieren von MSIL-Anweisungen (Microsoft Intermediate Language) in systemeigenen Code.
Die folgende Überladung der Emit-Methode verwendet den stfld-Opcode:
- ILGenerator.Emit(OpCode, FieldInfo)
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