Поделиться через


ISymbolWriter.DefineLocalVariable Метод

Определение

Определяет одну переменную в текущей лексической области видимости.

public:
 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 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
Public 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

Имя локальной переменной.

attributes
FieldAttributes

Побитовое сочетание атрибутов локальной переменной.

signature
Byte[]

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

addrKind
SymAddressKind

Типы адресов addr1, addr2 и addr3.

addr1
Int32

Первый адрес для спецификации локальной переменной.

addr2
Int32

Второй адрес для спецификации локальной переменной.

addr3
Int32

Третий адрес для спецификации локальной переменной.

startOffset
Int32

Начальное смещение для переменной. Если этот параметр равен нулю, он не обрабатывается и переменная определяется для всей области. Если параметр имеет ненулевое значение, переменная находится в границах смещений текущей области.

endOffset
Int32

Конечное смещение для переменной. Если этот параметр равен нулю, он не обрабатывается и переменная определяется для всей области. Если параметр имеет ненулевое значение, переменная находится в границах смещений текущей области.

Комментарии

Параметры startOffset и endOffset являются необязательными. Если их значение равно нулю, они игнорируются и переменная определяется на протяжении всего область. Если их значение не равно нулю, переменная попадает в смещение текущего область.

Можно вызывать DefineLocalVariable несколько раз для переменной с одинаковым именем, которая встречается несколько раз в разных диапазонах смещения на протяжении область. (В этом случае начальные и конечные смещения не должны перекрываться.)

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