在Visual Basic中命名可选参数

时间:2010-06-16 00:24:59

标签: vb6 optional-arguments

在Visual Basic中,我有许多可选参数的函数。我希望能够将这些可选参数中的一些传递给函数,而不必使用大量的逗号和空格来获取我想要的那些。在某个地方,我看到了一种方法来命名诸如OptVar:=val之类的参数,但这似乎不起作用。只是想知道是否有办法做到这一点。这有助于提高可读性。

Function foo(Optional val1 = 1, Optional val2 = 2, Optional val3 = 3) 
End Function

仅使用foo只需要最后一个arg:

fud = foo( , , 4)

有点笨拙。如果像这样的构造工作会更好:

fud = foo(val3:=4)

但这不起作用。

1 个答案:

答案 0 :(得分:4)

这实际上有效:

Function foo(Optional val1 = 1, Optional val2 = 2, Optional val3 = 3)
    MsgBox "val1: " & val1 & " val2: " & val2 & " val3: " & val3
    foo = val3
End Function


Private Sub Form_Load()
    MsgBox "foo returned: " & foo(val3:=4)
End Sub

您将输出第一个消息框,上面写着“val1:1 val2:2 val3:4”,第二个消息框返回 foo:4