VB 中定义二维动态数组的方法

2024-12-29 17:44:23
推荐回答(5个)
回答1:

ReDim 语句支持这样的语法,它与固定数组中使用的语法相同。对于每一维数,每个 ReDim 语句都能改变元素数目以及上下界。但是,数组的维数不能改变。

ReDim DynArray (4 to 12)

例如,用第一次声明在模块级所建立的动态数组 Matrix1:

Dim Matrix1 () As Integer

然后,在过程中给数组分配空间:

Sub CalcValuesNow ()
.
.
.
ReDim Matrix1 (19, 29)
End Sub

这里的 ReDim 语句给 Matrix 分配一个 20 × 30 的整数矩阵(元素总大小为 600)。

回答2:

用ARRAY定义数组也可以,只是你的定义方法及引用方法都不对。
用ARRAY无法定义二维数组,只能定义多重数组,因此不能向二维数组那样引用。
Dim PartIn, PartOut

PartIn = Array(Array(F11, F12, F13), Array(F21, F22, F23), Array(F31, F32, F33))
PartOut = Array(Array(F11F, F12F, F13F), Array(F21F, F22F, F23F), Array(F31F, F32F, F33F))
For i = 0 To 2
For j = 0 To 2
If PartIn(i)(j) = PartOut(i)(j) Then
PartIn(i)(j) = PartOut(i)(j)
Else
PartIn(i)(j) = PartIn(i)(j) & "and" & PartOut(i)(j)
End If
Next j
Next i

回答3:

也用dim a() as Integer声明,在实际使用中再用如redim a (100,100)声明就可以了。

回答4:

Dim a() As Integer
ReDim a(10, 10)

回答5:

dim arry() redim(x,y) x,y自己改