Vba vbNullString和“vbNullString”之间有什么区别吗&引用;?
在VBA中,如果将字符串或类似内容与Vba vbNullString和“vbNullString”之间有什么区别吗&引用;?,vba,Vba,在VBA中,如果将字符串或类似内容与vbNullString进行比较,而不是与空字符串进行比较,会有什么区别吗“”?如果是这样,两者之间有什么区别?指出,将“赋值给变量将使用6个字节的内存,而使用vbNullString将不会使用任何内存 就个人而言,我更喜欢评估字符串的长度。如果长度为0,则我们还得出结论,该字符串是vbNullString或“”。此方法被认为是检查vbNullString的最快方法 If Len(string) = 0 Then 您可以阅读LenvsvbNullString
vbNullString
进行比较,而不是与空字符串进行比较,会有什么区别吗<代码>“”?如果是这样,两者之间有什么区别?指出,将“
赋值给变量将使用6个字节的内存,而使用vbNullString
将不会使用任何内存
就个人而言,我更喜欢评估字符串的长度。如果长度为0,则我们还得出结论,该字符串是vbNullString
或“”
。此方法被认为是检查vbNullString
的最快方法
If Len(string) = 0 Then
您可以阅读
Len
vsvbNullString
vs“
比较。vbNullString
和”
是不同的。这是一个描述内存使用差异的网页练习
“这是清除字符串变量的常用方法
Text$ = ""
“浪费了!首先,字符串<代码>”“/CODE”每次使用它都需要6字节的RAM。考虑备选方案:
Text$ = vbNullString
这是什么?vbNullString
是一个特殊的VB常量,表示空字符串。“
文本是一个空字符串。有一个重要的区别。空字符串是一个实字符串。空字符串不是。它只是一个零。如果你懂C语言,vbNullString
就是空字符串的等价物
在大多数情况下,vbNullString
相当于VB中的”
。唯一实际的区别是vbNullString
分配和处理速度更快,占用内存更少
如果调用某些非VB API或组件,请在分发应用程序之前使用vbNullString
测试调用。您调用的函数可能不会检查空字符串,在这种情况下可能会崩溃。非VB函数应在处理字符串参数之前检查空值。如果运气不好,您调用的特定函数ing不能做到这一点。在这种情况下,请使用”
。通常API确实支持vbNullString
,它们甚至可以使用它执行得更好
本文的其余部分提供了关于优化字符串的其他信息,这些信息可能也很有见地
完整网页:看起来不错,除非其他人提供更多信息,否则我会将此标记为解决方案。然而,您链接到的最后一篇文章表明存在差异,尽管作者不知道这是什么。当然,它可以像您在前面的回答中指出的那样,简单到分配给变量时占用的内存。有一点不同,
“
是长度为零的现有字符串,vbNullString
是类型为string
的空指针(不指向字符串)。为了比较VB,但有时你想。第二个链接已经死了:见Rob Bovey在