SymWriter.DefineLocalVariable Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Определяет одну переменную в текущей лексической области видимости.
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
Имя локальной переменной.
- attributes
- FieldAttributes
Атрибуты локальной переменной, заданные с помощью перечислителя FieldAttributes.
- signature
- Byte[]
Подпись локальной переменной.
- addrKind
- SymAddressKind
Типы адресов addr1
, addr2
и addr3
, использующие SymAddressKind.
- addr1
- Int32
Первый адрес для спецификации локальной переменной.
- addr2
- Int32
Второй адрес для спецификации локальной переменной.
- addr3
- Int32
Третий адрес для спецификации локальной переменной.
- startOffset
- Int32
Начальное смещение для переменной. Если значение равно нулю, этот параметр пропускается и переменная определяется для всей области видимости. Если этот параметр имеет ненулевое значение, переменная находится в границах смещений текущей области видимости.
- endOffset
- Int32
Конечное смещение для переменной. Если значение равно нулю, этот параметр пропускается и переменная определяется для всей области видимости. Если этот параметр имеет ненулевое значение, переменная находится в границах смещений текущей области видимости.
Реализации
Комментарии
Параметры startOffset
и endOffset
являются необязательными. Если их значение равно нулю, они игнорируются и переменная определяется на протяжении всего область. Если их значение не равно нулю, они попадают в смещения текущего область.
Можно вызывать DefineLocalVariable несколько раз для переменной с одинаковым именем, которая встречается несколько раз в разных диапазонах смещения на протяжении область. (В этом случае начальные и конечные смещения не должны перекрываться.)