Ответ 1
vbNullString
и ""
отличаются. Ниже приведен пример веб-страницы, описывающий различия в использовании памяти.
"Это обычный способ очистки строковой переменной.
Text$ = ""
Какая трата! Прежде всего, строка ""
занимает 6 байт ОЗУ каждый раз, когда вы ее используете. Рассмотрим альтернативу:
Text$ = vbNullString
Так что это? vbNullString
- специальная константа VB, которая обозначает пустую строку. Литерал ""
представляет собой пустую строку. Там важная разница. Пустая строка - настоящая строка. Нулевая строка - нет. Это всего лишь ноль. Если вы знаете язык C, vbNullString
является эквивалентом NULL.
Для большинства целей vbNullString
эквивалентен ""
в VB. Единственное практическое отличие заключается в том, что vbNullString
быстрее назначает и обрабатывает и занимает меньше памяти.
Если вы вызываете какой-либо API или компонент, отличный от VB, протестируйте вызовы с помощью vbNullString
до распространения вашего приложения. Функция, которую вы вызываете, может не проверять строку NULL, и в этом случае она может упасть. Функции Non-VB должны проверять значение NULL перед обработкой строкового параметра. С неудачей, конкретная функция, которую вы вызываете, не делает этого. В этом случае используйте ""
. Обычно API поддерживают vbNullString
, и они могут даже лучше работать с ним! "
В остальной части статьи есть дополнительная информация об оптимизации строк, которые также могут быть проницательными.
Полная веб-страница: http://www.aivosto.com/vbtips/stringopt.html