函数返回数组的大小

时间:2014-11-11 08:06:12

标签: arrays vbscript

您可以使用UBound来确定数组的大小。我希望这是一个函数返回的数组,但后来我得到了错误Invalid procedure call。这是(简化)函数:

Public Function GetCheckBlocks(fileName)
    Dim counter, checkBlocks
    Set checkBlocks = CreateObject( "System.Collections.ArrayList" )

    For counter = 0 To 10
      checkBlocks.Add counter
    Next

    Set GetCheckBlocks = checkBlocks
End Function

这是我调用函数并希望获得数组大小的方法:

Dim expectedChecks, expectedFile
expectedFile = "test.txt"

Set expectedChecks = GetCheckBlocks(expectedFile)
MsgBox UBound(expectedChecks)

这里有什么问题,如何获得返回数组的大小?

1 个答案:

答案 0 :(得分:1)

您的函数返回一个ArrayList对象,而不是一个数组。 UBound仅适用于数组。要获取ArrayList中包含的元素数,请使用.Count属性:

expectedChecks.Count