动态数组声明了以后需要用redim语句分配内存才可以使用,有没有办法判断某动态数组是否分配了内存。
    谢谢。

解决方案 »

  1.   

    '看看是不是符合你的要求
    Private Function isNullArray(s() As Integer) As Boolean
    Dim i As Integer
    On Error Resume Next
    i = LBound(s)
    If Err.Number = 9 Then
        isNullArray = True
    Else
        isNullArray = False
    End IfPrivate Sub Command1_Click()
    Dim s() As Integer
    If isNullArray(s) Then
        ReDim arr(10)
    Else
        MsgBox "已经分配内存了"
    End If
    End Sub
    End Function
      

  2.   

    Private Function isNullArray(s() As Integer) As Boolean
    Dim i As Integer
    On Error Resume Next
    i = LBound(s)
    If Err.Number = 9 Then
        isNullArray = True
    Else
        isNullArray = False
    End If
    End FunctionPrivate Sub Command1_Click()
    Dim s() As Integer
    If isNullArray(s) Then
        ReDim arr(10)
    Else
        MsgBox "已经分配内存了"
    End If
    End Sub