共用方式為


LocalBuilder.SetLocalSymInfo 方法

定義

設定局部變數的符號資訊。

多載

SetLocalSymInfo(String)

設定這個局部變數的名稱。

SetLocalSymInfo(String, Int32, Int32)

設定這個局部變數的名稱和語彙範圍。

SetLocalSymInfo(String)

設定這個局部變數的名稱。

public:
 void SetLocalSymInfo(System::String ^ name);
public void SetLocalSymInfo (string name);
member this.SetLocalSymInfo : string -> unit
Public Sub SetLocalSymInfo (name As String)

參數

name
String

局部變數的名稱。

例外狀況

已使用 CreateType()建立包含的類型。

-或-

沒有針對包含模組定義的符號寫入器。

這個區域是在動態方法中定義,而不是在動態類型的 方法中定義。

name null

範例

下列程式代碼範例說明如何使用 SetLocalSymInfo 方法。 此程式代碼是 LocalBuilder 類別較大範例的一部分。

// Create local variables named myString and myInt.
LocalBuilder^ myLB1 = myMethodIL->DeclareLocal( String::typeid );
myLB1->SetLocalSymInfo( "myString" );
Console::WriteLine( "local 'myString' type is: {0}", myLB1->LocalType );

LocalBuilder^ myLB2 = myMethodIL->DeclareLocal( int::typeid );
myLB2->SetLocalSymInfo( "myInt", 1, 2 );
Console::WriteLine( "local 'myInt' type is: {0}", myLB2->LocalType );
// Create local variables named myString and myInt.
LocalBuilder myLB1 = myMethodIL.DeclareLocal(typeof(string));
myLB1.SetLocalSymInfo("myString");
Console.WriteLine("local 'myString' type is: {0}", myLB1.LocalType);

LocalBuilder myLB2 = myMethodIL.DeclareLocal(typeof(int));
myLB2.SetLocalSymInfo("myInt", 1, 2);
Console.WriteLine("local 'myInt' type is: {0}", myLB2.LocalType);
' Create local variables named myString and myInt.
Dim myLB1 As LocalBuilder = myMethodIL.DeclareLocal(GetType(String))
myLB1.SetLocalSymInfo("myString")
Console.WriteLine("local 'myString' type is: {0}", myLB1.LocalType)

Dim myLB2 As LocalBuilder = myMethodIL.DeclareLocal(GetType(Integer))
myLB2.SetLocalSymInfo("myInt", 1, 2)
Console.WriteLine("local 'myInt' type is: {0}", myLB2.LocalType)

備註

動態類型中定義的方法支援 SetLocalSymInfo 方法。 不支援使用 DynamicMethod 類別定義的動態方法。

適用於

SetLocalSymInfo(String, Int32, Int32)

設定這個局部變數的名稱和語彙範圍。

public:
 void SetLocalSymInfo(System::String ^ name, int startOffset, int endOffset);
public void SetLocalSymInfo (string name, int startOffset, int endOffset);
member this.SetLocalSymInfo : string * int * int -> unit
Public Sub SetLocalSymInfo (name As String, startOffset As Integer, endOffset As Integer)

參數

name
String

局部變數的名稱。

startOffset
Int32

局部變數語彙範圍的開始位移。

endOffset
Int32

局部變數語彙範圍的結束位移。

例外狀況

已使用 CreateType()建立包含的類型。

-或-

沒有針對包含模組定義的符號寫入器。

這個區域是在動態方法中定義,而不是在動態類型的 方法中定義。

範例

下列程式代碼範例說明如何使用 SetLocalSymInfo 方法。 此程式代碼是 LocalBuilder 類別較大範例的一部分。

// Create local variables named myString and myInt.
LocalBuilder^ myLB1 = myMethodIL->DeclareLocal( String::typeid );
myLB1->SetLocalSymInfo( "myString" );
Console::WriteLine( "local 'myString' type is: {0}", myLB1->LocalType );

LocalBuilder^ myLB2 = myMethodIL->DeclareLocal( int::typeid );
myLB2->SetLocalSymInfo( "myInt", 1, 2 );
Console::WriteLine( "local 'myInt' type is: {0}", myLB2->LocalType );
// Create local variables named myString and myInt.
LocalBuilder myLB1 = myMethodIL.DeclareLocal(typeof(string));
myLB1.SetLocalSymInfo("myString");
Console.WriteLine("local 'myString' type is: {0}", myLB1.LocalType);

LocalBuilder myLB2 = myMethodIL.DeclareLocal(typeof(int));
myLB2.SetLocalSymInfo("myInt", 1, 2);
Console.WriteLine("local 'myInt' type is: {0}", myLB2.LocalType);
' Create local variables named myString and myInt.
Dim myLB1 As LocalBuilder = myMethodIL.DeclareLocal(GetType(String))
myLB1.SetLocalSymInfo("myString")
Console.WriteLine("local 'myString' type is: {0}", myLB1.LocalType)

Dim myLB2 As LocalBuilder = myMethodIL.DeclareLocal(GetType(Integer))
myLB2.SetLocalSymInfo("myInt", 1, 2)
Console.WriteLine("local 'myInt' type is: {0}", myLB2.LocalType)

備註

動態類型中定義的方法支援 SetLocalSymInfo 方法。 不支援使用 DynamicMethod 類別定義的動態方法。

適用於