45

如何在 Visual Basic 中创建包含可选参数的方法?

4

2 回答 2

87

使用Optional关键字并提供默认值。可选参数必须是最后定义的参数,以避免创建模棱两可的函数。

Sub MyMethod(ByVal Param1 As String, Optional ByVal FlagArgument As Boolean = True)
    If FlagArgument Then
        'Do something special
        Console.WriteLine(Param1)
    End If

End Sub

像这样称呼它:

MyMethod("test1")

或者像这样:

MyMethod("test2", False)
于 2008-11-19T20:23:47.293 回答
0

请记住,可选参数不能位于必需参数之前。

此代码将显示错误:

Sub ErrMethod(可选的 ByVal FlagArgument As Boolean = True, ByVal Param1 As String)
    If FlagArgument Then
        '做一些特别的事
        Console.WriteLine(Param1)
    万一
结束子

这是常见错误,调试器没有太多解释......它有道理,想象一下调用......

ErrMethod(???, Param1)
于 2018-10-12T05:58:39.277 回答