SymWriter.DefineLocalVariable(String, FieldAttributes, Byte[], SymAddressKind, Int32, Int32, Int32, Int32, Int32) Метод

Определение

Определяет одну переменную в текущей лексической области видимости.Defines a single variable in the current lexical scope.

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)

Параметры

name
String

Имя локальной переменной.The local variable name.

attributes
FieldAttributes

Атрибуты локальной переменной, заданные с помощью перечислителя FieldAttributes.The local variable attributes specified using the FieldAttributes enumerator.

signature
Byte[]

Подпись локальной переменной.The local variable signature.

addrKind
SymAddressKind

Типы адресов addr1, addr2 и addr3, использующие SymAddressKind.The address types for addr1, addr2, and addr3 using SymAddressKind.

addr1
Int32

Первый адрес для спецификации локальной переменной.The first address for the local variable specification.

addr2
Int32

Второй адрес для спецификации локальной переменной.The second address for the local variable specification.

addr3
Int32

Третий адрес для спецификации локальной переменной.The third address for the local variable specification.

startOffset
Int32

Начальное смещение для переменной.The start offset for the variable. Если значение равно нулю, этот параметр пропускается и переменная определяется для всей области видимости.If zero, this parameter is ignored and the variable is defined throughout the entire scope. Если этот параметр имеет ненулевое значение, переменная находится в границах смещений текущей области видимости.If nonzero, it falls within the offsets of the current scope.

endOffset
Int32

Конечное смещение для переменной.The end offset for the variable. Если значение равно нулю, этот параметр пропускается и переменная определяется для всей области видимости.If zero, this parameter is ignored and the variable is defined throughout the entire scope. Если этот параметр имеет ненулевое значение, переменная находится в границах смещений текущей области видимости.If nonzero, it falls within the offsets of the current scope.

Реализации

Комментарии

Параметры startOffset и endOffset являются необязательными.The startOffset and endOffset parameters are optional. Если их значение равно нулю, они игнорируются, а переменная определяется всей областью.If their value is zero, they are ignored and the variable is defined throughout the entire scope. Если их значение не равно нулю, они будут находиться в пределах смещений текущей области.If their value is nonzero, they fall within the offsets of the current scope.

Можно вызвать DefineLocalVariable несколько раз для переменной с одним и тем же именем, которая встречается несколько раз в разных диапазонах смещения в пределах области.You can call DefineLocalVariable multiple times for a variable of the same name that occurs multiple times in different offset ranges throughout a scope. (В этом случае начальное и конечное смещения не должны перекрываться.)(In this case, start and end offsets must not overlap.)

Применяется к