Freigeben über


SymWriter.DefineLocalVariable Methode

Definition

Definiert eine einzelne Variable im aktuellen lexikalischen Gültigkeitsbereich.

public:
 override void DefineLocalVariable(System::String ^ name, System::Reflection::FieldAttributes attributes, cli::array <System::Byte> ^ signature, System::Diagnostics::SymbolStore::SymAddressKind addrKind, int addr1, int addr2, int addr3, int startOffset, int endOffset);
public:
 virtual void DefineLocalVariable(System::String ^ name, System::Reflection::FieldAttributes attributes, cli::array <System::Byte> ^ signature, System::Diagnostics::SymbolStore::SymAddressKind addrKind, int addr1, int addr2, int addr3, int startOffset, int endOffset);
public override void DefineLocalVariable (string name, System.Reflection.FieldAttributes attributes, byte[] signature, System.Diagnostics.SymbolStore.SymAddressKind addrKind, int addr1, int addr2, int addr3, int startOffset, int endOffset);
public virtual void DefineLocalVariable (string name, System.Reflection.FieldAttributes attributes, byte[] signature, System.Diagnostics.SymbolStore.SymAddressKind addrKind, int addr1, int addr2, int addr3, int startOffset, int endOffset);
abstract member DefineLocalVariable : string * System.Reflection.FieldAttributes * byte[] * System.Diagnostics.SymbolStore.SymAddressKind * int * int * int * int * int -> unit
override this.DefineLocalVariable : string * System.Reflection.FieldAttributes * byte[] * System.Diagnostics.SymbolStore.SymAddressKind * int * int * int * int * int -> unit
Public Overrides Sub DefineLocalVariable (name As String, attributes As FieldAttributes, signature As Byte(), addrKind As SymAddressKind, addr1 As Integer, addr2 As Integer, addr3 As Integer, startOffset As Integer, endOffset As Integer)
Public Overridable Sub DefineLocalVariable (name As String, attributes As FieldAttributes, signature As Byte(), addrKind As SymAddressKind, addr1 As Integer, addr2 As Integer, addr3 As Integer, startOffset As Integer, endOffset As Integer)

Parameter

name
String

Der Name der lokalen Variablen.

attributes
FieldAttributes

Die mit dem FieldAttributes-Enumerator angegebenen Attribute der lokalen Variablen.

signature
Byte[]

Die Signatur der lokalen Variablen.

addrKind
SymAddressKind

Die Adresstypen für addr1, addr2 und addr3, die SymAddressKind verwenden.

addr1
Int32

Die erste Adresse für die Angabe der lokalen Variablen.

addr2
Int32

Die zweite Adresse für die Angabe der lokalen Variablen.

addr3
Int32

Die dritte Adresse für die Angabe der lokalen Variablen.

startOffset
Int32

Der Anfangsoffset für die Variable. Wenn dieser Parameter 0 ist, wird er ignoriert, und die Variable wird für den gesamten Gültigkeitsbereich definiert. Wenn dessen Wert nicht 0 ist, liegt er innerhalb der Offsets des aktuellen Gültigkeitsbereichs.

endOffset
Int32

Der Endoffset für die Variable. Wenn dieser Parameter 0 ist, wird er ignoriert, und die Variable wird für den gesamten Gültigkeitsbereich definiert. Wenn dessen Wert nicht 0 ist, liegt er innerhalb der Offsets des aktuellen Gültigkeitsbereichs.

Implementiert

Hinweise

Die Parameter startOffset und endOffset sind optional. Wenn ihr Wert null ist, werden sie ignoriert, und die Variable wird im gesamten Bereich definiert. Wenn ihr Wert ungleich null ist, fallen sie in die Offsets des aktuellen Bereichs.

Sie können mehrere Male für eine Variable mit demselben Namen aufrufen DefineLocalVariable , die mehrmals in verschiedenen Offsetbereichen in einem Bereich auftritt. (In diesem Fall dürfen sich Start- und Endoffsets nicht überlappen.)

Gilt für: