我一直在做一些代码审查,这段代码对我来说似乎很奇怪,因为它没有任何返回声明:
Protected Function AddZero(ByVal vsInput As String) As String
If Len(vsInput) = 1 Then
AddZero = "0" & vsInput
Else
AddZero = vsInput
End If
End Function
答案 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