В vb6 значением по умолчанию для строковой переменной была пустая строка.Программист vb6, полагающийся на такое поведение, будет не «хуже», чем программист на C, полагающийся на нулевую инициализацию по умолчанию переменных int;оба поведения были определены как часть языка.
Кроме того, в COM (структура, на которой основывались предыдущие версии VB6), всякий раз, когда создавалась ссылка на строку, кто-то должен был бы вручную утилизировать ее.,Поскольку наиболее часто используемой строкой была пустая строка, многие COM-методы явно документированы как относящиеся к нулевому указателю как к пустой строке.Это означает, что функция, возвращающая пустую строку или передающая ее в качестве параметра значения или возвращающая ее, может просто передать нулевой указатель без необходимости выделять что-либо;получатель нулевого указателя не должен будет ничего перераспределять.
Поскольку объекты в .net не требуют явного освобождения, преимущества в производительности, связанные с рассмотрением пустой ссылки как пустой строки, больше не применяются.Тем не менее, методы, которые вызываются из кода, который может ожидать поведение, подобное поведению COM-методов, часто будут считать ссылки на нулевые строки такими же, как пустые строки.