在Visual Basic .NET中没有此函数的返回关键字

时间:2011-08-05 17:12:28

标签: vb.net

我一直在做一些代码审查,这段代码对我来说似乎很奇怪,因为它没有任何返回声明:

Protected Function AddZero(ByVal vsInput As String) As String
    If Len(vsInput) = 1 Then
        AddZero = "0" & vsInput
    Else
        AddZero = vsInput
    End If
End Function

2 个答案:

答案 0 :(得分:6)

Visual Basic将函数名称视为返回值,直到函数结束才返回。在代码中,您可以看到AddZero(函数名称)根据if条件设置为两个值之一。这就是你如何确定返回的内容。

答案 1 :(得分:1)

在VB中,您在函数末尾有一个隐式返回。

为函数名称分配返回值,如下所示:

Protected Function AddZero(ByVal vsInput As String) As String
     AddZero = "0"  ' The return value is "0"
End Function

你可以像这样退出一个函数(return):

Protected Function AddZero(ByVal vsInput As String) As String
     If vsInput = "0" Then
        AddZero = vsInput;
        Exit Function
     End If

     AddZero = "0"  ' The return value is "0"
End Function