有时我们在使用数组时却无法估计数组的大小,于是很容易想到动态数组,即在使用的过程中动态地改变数组的大小。这在VB中很容易实现,下面就以具体的例子来讲解:
在VB中定义动态数组通常分两步:
(1)在窗体层或标准模块中用Dim、Private或Public声明一个没有下标的数组(括号不能省略),
(2)在过程中用ReDim语句定义带下标的数组
ReDim语句的作用,是重新指出数组的大小。它是在程序执行到ReDim语句时才分配存储空间。
格式:ReDim(数组名)(下标)[As(类型)]
功能:改变动态数组的大小和存储空间。
说明:
(1)下标可以是常量,也可以是具有确定值的变量。
(2)语句中各参量的含义与用Dim定义数组的语句相同。
(3)ReDim语句只能用于动态数组,它可以改变每一维的大小,但不能改变维数。
(4)当程序编译时,ReDim语句中的所有数组均被说明为动态数组。在程序运行中,当执行到ReDim语句时,就把新的上下界重新分配给数组,数组元素的值将被初始化,所有的数值元素的值被置为0,字符串元素被置为空字符串。
(5)ReDim语句可以同Dim语句一样定义数组。在同一程序中,ReDim语句还可以多次使用。在用:ReDim语句重新定义数组之前,可以使用:Erase语句将原来的数组删除
实例:
Dim aa() As Long '定义一个动态数组
Redim aa(10) '调整动态数组的大小
dim i as integer
for i=1 to 10
aa(i) = i
next
Redim aa(5) '又一次调整大小
......其它的操作
新闻热点
疑难解答