我跑了一些代碼通過自動翻譯爲C#到VB,並把它翻譯一些像這樣的代碼:布爾與[布爾]之間的區別是什麼?
Public Property Title As [String]
這是如何不同,以
Public Property Title As String
,爲什麼同時存在?
我跑了一些代碼通過自動翻譯爲C#到VB,並把它翻譯一些像這樣的代碼:布爾與[布爾]之間的區別是什麼?
Public Property Title As [String]
這是如何不同,以
Public Property Title As String
,爲什麼同時存在?
String
是關鍵字。如果您想使用關鍵字作爲標識符,則必須將其括在括號內。 [String]
是一個標識符。 String
關鍵字總是指System.String
類,而[String]
可以參考String
命名自己的類在當前的命名空間。假設你有Imports System
,它們指的是同一件事的大部分時間,但他們可以是不同的:
Module Test
Class [String]
End Class
Sub Main()
Dim s As String = "Hello World" // works
Dim s2 As [String] = "Hello World" // doesn't work
End Sub
End Module
的主要原因爲用於治療關鍵字作爲標識符的[ ]
存在是與其他語言的庫互操作性可以使用VB關鍵字作爲類型或成員名稱。
[]可以在C#中使用VBs的關鍵字作爲標識符,就像@。這裏沒用。
在這個例子中,他們什麼都不做。(*)可以使用括號使用保留字作爲標識符,雖然。例如: - Dim [String] as String
編輯: (*),除非他們已經定義了自己的類名爲[String]
,他們可以參照
偉大的答案,謝謝。 – NibblyPig 2010-03-05 11:18:07
有用且正確的答案。 – chrissie1 2010-03-05 12:58:51