2011-12-21 31 views
6

當您在 Visual Studio 2010調試器中的某些對象類型時,輸出包括反引號。反撥意味着什麼?在Visual Studio調試器中,類型名稱中的反引號是什麼意思?

Dim myList as List = a List 
Debug.Print(myList.GetType().ToString() 

輸出在立即窗口調試器:

System.Collections.Generic.List`1[System.String]

+0

您剛剛刪除了對類型名稱的所有引用,使標題更加模糊。之前我更喜歡它。 – dlras2 2011-12-21 18:19:52

+0

怎麼樣:「當你在Visual Studio調試器中的類型名稱中看到反引號時,這意味着什麼?」 – bernie2436 2011-12-21 19:14:30

+0

我曾考慮過這個問題,但決定只是把它推回來(沒有任何意圖。)只要確保提及類型名稱 - 這就是問題的關鍵。 – dlras2 2011-12-21 19:17:03

回答

3

它指示所述類型的尺寸(在這種情況下,字符串) - 如列表(串),該字符串是第一要素(1索引)。

嘗試創建一個SomeClass(Of T as String, U as Integer),看看你得到了什麼。

Public Class TestGeneric(Of T, U) 
    Public Sub TellType(ByVal Something As T, ByVal SomethingElse As U) 
     Console.WriteLine(Me.GetType()) 
     Console.WriteLine(Something.GetType()) 
     Console.WriteLine(SomethingElse.GetType()) 
    End Sub 
End Class 

Sub Main() 
    Dim MyTestGeneric As New TestGeneric(Of String, Integer) 
    MyTestGeneric.TellType("Test", 3) 
    Console.ReadKey(True) 
End Sub 
+1

這裏是泛型的MSDN介紹文章:http://msdn.microsoft.com/en-us/library/w256ka79(v=vs.80).aspx – dlras2 2011-12-21 17:25:38

+0

@ akh2103我已經添加了一個例子(未經測試,因爲我不'沒有VS交易) – Basic 2011-12-21 17:31:52

+0

經過測試和調整。 – dlras2 2011-12-21 17:53:57

3

這是CLR中泛型字符串表示的一部分。

反引號(`)後面的數字表示該類型所採用的泛型類型參數的數量。方括號中的類型表明這些泛型類型參數是如何綁定的。

相關問題