通过函数传递二维数组

时间:2013-01-24 12:07:51

标签: vb.net

通过函数传递二维数组我感兴趣 数组在表单的级别范围内声明:
我尝试从VB6重写我的代码的一部分,我有可行的例子。

Dim myArray(,) As Double

然后我得到一个sub,其中数组被重新编辑并根据数据填充,类似这样的符号情况:

Public Sub mySub(ByVal myArray(,) As Double)

    Dim temparray() As Double = {3, 5, 7, 9}
    For a As Double = 0 temparray.length - 1
         ReDim Preserve myarray(2, temparray(a))
    Next a

    myArray(1, 5) = 3.14
    ... etc...
End Sub

最后,我想从其他子句填充和读取数组中的数据:

mySub(myArray)
Debug.Print(myArray(1, 5))

在这里我收到错误消息:

  

对象引用未设置为对象的实例。

mySub中的数据已正确填写但我在调用sub时看不到这些数据 我做错了什么以及如何使这种情况有效?

1 个答案:

答案 0 :(得分:7)

您可以通过以下方式解决此问题:

Public Sub mySub(ByRef myArray(,) As Double)
    '...
End Sub

您需要引用变量才能在Sub。

之外进行更改