против строки в .NET - PullRequest
1 голос
/ 06 мая 2009

Я использовал developerfusion.com для преобразования фрагмента кода C # в VB .NET и заметил тип String, переведенный в [String].

Я попробовал Google и Searching SO безрезультатно, поэтому я спрошу сообщество, есть ли разница между [String] и String? И если да, то в чем разница?

Ответы [ 4 ]

8 голосов
/ 06 мая 2009

В VB.Net [], окружающее слово, используется для разрешения использования ключевого слова в качестве обычного идентификатора. Поэтому использование [String] означает, что я хочу идентифицировать что-то со словом String, а не с ключевым словом VB String.

6 голосов
/ 06 мая 2009

Преобразователь, вероятно, сделал это, потому что не распознал строковый тип и подумал, что это класс, определенный в вашем коде.

Вы можете заключить в скобки идентификаторы, чтобы использовать ключевые слова. Вы можете создать свой собственный класс [String], который будет отличаться от встроенного класса String, но это, конечно, может легко запутать ...

Public Class [String]
   Public Value As Integer
End Class

Dim s As New [String]
s.Value = 42
1 голос
/ 07 мая 2009

В VB.NET можно использовать скобки, чтобы ключевые слова VB.NET могли использоваться в качестве имен, определенных пользователем. Например, вы можете создать класс с именем Integer, даже если в VB.NET:

уже есть ключевое слово Integer.
Public Class [Integer]
End Class

Надеюсь, это прояснит!

1 голос
/ 06 мая 2009

В скобках обычно указывается имя переменной с использованием зарезервированного ключевого слова. Вы называли строковые переменные String?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...