我查过 定长字符串静态数组用Erase语句后,数组的每一个元素被设为0,为什么我下面的过程中,文本框里却得不到0呢?Private Sub Command1_Click()
Dim a(5) As String * 5
a(1) = "sdfddhfg"
Erase a
Text1.Text = a(1)
End Sub
Dim a(5) As String * 5
a(1) = "sdfddhfg"
Erase a
Text1.Text = a(1)
End Sub
Erase 语句 重新初始化大小固定的数组的元素,以及释放动态数组的存储空间。语法Erase arraylist所需的 arraylist 参数是一个或多个用逗号隔开的需要清除的数组变量。说明Erase 根据是固定大小(常规的)数组还是动态数组,来采取完全不同的行为。Erase 无需为固定大小的数组恢复内存。Erase 按下表来设置固定数组的元素:数组类型 Erase 对固定数组元素的影响
固定数值数组 将每个元素设为 0。
固定字符串数组(长度可变) 将每个元素设为零长度字符串 ("")。
固定字符串数组(长度固定) 将每个元素设为 0。
固定 Variant 数组 将每个元素设为 Empty。
用户定义类型的数组 将每个元素作为单独的变量来设置。
对象数组 将每个元素设为特定值 Nothing。
Erase 释放动态数组所使用的内存。在下次引用该动态数组之前,程序必须使用 ReDim 语句来重新定义该数组变量的维数。
^_^
前提是先定义了一个定长字符串静态数组,给其中一个元素赋值后,用Erse语句后固定字符串数组(长度固定) 将每个元素设为 0。 是不是应改为:固定字符串数组(长度固定) 将每个元素设为相应长度的""
Dim a(5) As String 结果为0认真看一下MSDN就明白了。^_^