VBscript中的函数是否采用可变数量的参数?

ret*_*n 0 2 syntax vbscript overloading

例如,如果我在VBscript中有一个函数:

Function sum(a, b, c)
    sum = a + b + c
End function
Run Code Online (Sandbox Code Playgroud)

现在,在main中,我创建两个变量并将它们传递给函数sum,如下所示:

Dim a : a = 1
Dim b : b = 2
Call sum(a, b)
Run Code Online (Sandbox Code Playgroud)

这会起作用吗?为什么?谢谢.

Kul*_*gin 6

它不起作用,VBScript不支持可选参数.
我将使用一个函数,它接受一个数字数组,而不是改变参数数量来获得总和.

Function sum(nums)
    Dim i, out
    For i = 0 To UBound(nums)
        out = out + nums(i)
    Next
    sum = out
End function

Call sum(Array(1, 2, 3, 4))
Run Code Online (Sandbox Code Playgroud)


KSl*_*moe 5

根据,VBScript不支持可选参数。您可以按照他们的建议进行操作并将空值传递给您的函数。