Ответ 1
Уведомление старого типа - см. это
Некоторые другие старые:
& -> Long
% -> Integer
# -> Double
! -> Single
@ -> Decimal
$ -> String
Все еще существует в VB.Net ради обратной совместимости...
что означает знак доллара после имени метода в vb.net
вот так:
Replace$("EG000000", "0", "")
Уведомление старого типа - см. это
Некоторые другие старые:
& -> Long
% -> Integer
# -> Double
! -> Single
@ -> Decimal
$ -> String
Все еще существует в VB.Net ради обратной совместимости...
В "классическом" VB существовали две версии встроенных встроенных функций. Позвольте мне использовать Left
в качестве примера:
Left(s, length)
принимает вариант в качестве первого параметра и возвращает вариант.Left$(s, length)
берет строку в качестве первого параметра и возвращает строку.Это различие все еще существует в современном VBA.
Я подозреваю, что причина этого в том, что строки в VBA не могут быть Null
(обратите внимание, что Null <> ""
). Таким образом, при работе с полями NULL базы данных вам приходилось использовать переменные варианта. Переменные переменных могут принимать любое значение, включая все интегральные значения (строки, целые числа,...), а также некоторые специальные значения, такие как Null
, Empty
или Missing
. Функции non $позволили вам использовать варианты в качестве входных данных и получить варианты в качестве вывода. Например, Left(Null, ...)
возвращает Null
.
В VB.NET это разграничение больше не нужно: функции не-$ выполняют точно так же, как и $-функции, которые сохраняются только для обратной совместимости со старым кодом.
Что сказал Хайнци и прояснил бизнес-характер типа
Dim s$ = "FooBar" 'dim s as String = "FooBar"
Dim r As String
Stop
r = Replace$(s, "Bar", "")
'.Net equivalent
r = s.Replace("Bar", "")