如何使用一行VB6退出嵌套子程序?

时间:2019-07-11 10:45:02

标签: vb6

我想知道是否有一种简化的方法可以从另一个嵌套的Sub(Sub2)退出Sub(Sub1);那么,Sub2是在Sub1内部调用的,如果在Sub1中验证失败,我也想退出Sub1吗?

Sub Process()
    Validate()

    'SomeMorecode...

End Sub

Sub Validate()
    '...
    '...


End Sub

1 个答案:

答案 0 :(得分:6)

首先,您需要了解Subs不返回值。它们就像C中的void函数。

第二,每当您要退出某个Sub时,请使用Exit Sub

或者,如果您想退出某个功能,请使用Exit Function

或者,如果您想退出Do Loop,Exit Do Exit While

请记住,如果在实际返回任何内容之前执行Exit Function,则将自动设置默认值。如果是布尔型,则该值为False。

您明白了

Sub MyFirstSub()
    If Validate() Then
       'Do more work here
    Else
       Exit Sub  ' Early Exit
    End If

    'Other things to do after validation is TRUE
    '...
    '...

End Sub

Function Validate() As Boolean
   ' Do validation here and either return TRUE or FALSE
   If Rnd(1) > 0.5 Then
     Validate = True
   Else
     Validate = False
   End If
End Function