在VB中,无论是一维数组还是二维数组,无论是静态数组还是动态数组,在使用之前都必须进行声明。
声明一个数组的格式如下:
Public|Private|Dim|Static数组名(<下标>)As[数据类型]
其中,下标定义了数组的维数和下标变量的总个数,格式为:
下界1 To 上界1,下界2To 上界2,……下界n To 上界n
依次表示第1维、第2维、、第n维的下标取值范围。下界不能大于上界,当省略下界时,通常表示下界为0。
例如:Dim A (1 TO 10) As Integer
该语句声明了一个包含10个整型元素的静态一维数组,10个数组元素依次为:A(1)、A(2)、……、A(10)。
又如:DimA(10) AS Integer
该语句省略了下标下界,声明了一个包含11个元素的静态一维数组,11个数组元素依次为:A(0)、A(1)、……、A(10)。
而语句:DimB(1 To 10,1 To 5) As Integer
声明了一个静态二维数组,数组元素均为整型,共50个。依次为:B(1,1)、B(1,2)、……、B(10,5)。这些数组元素的逻辑关系按行列排列,10行5列。
声明动态数组的方法与静态数组类似,只要将数组名后的括号内设为空即可。例如:
DimC() As Integer
定义了一个变长的动态数组。
动态数组的变长是相对的,在声明时可以不指定数组的长度,但使用之前,还要用ReDim语句重新设置数组的大小和维数。
例如:ReDimC(10) //将数组C设置为11元素的一维数组。
ReDimC(2,4) //将数组C设置为15个元素的二维数组。
需要注意的是,与Dim语句不同, ReDim语句是一个可执行语句,只能出现在过程中。