exceptionhandlingc.vb

来自「大名鼎鼎的mono是.NET平台的跨平台(支持linux」· VB 代码 · 共 104 行

VB
104
字号
Option Strict OffImports SystemImports Microsoft.VisualBasicModule ExceptionHandlingC    Sub f1()        On Error GoTo ErrorHandler        Dim i As Integer = 0        i = 1 / i        Console.WriteLine(i)        Exit SubErrorHandler:        Throw New Exception("AA")        Resume Next    End Sub    Sub f2()        On Error GoTo ErrorHandler        f1()        Exit SubErrorHandler:        If Err.Description <> "AA" Then            Throw New Exception("#EHC1 - Error statement failed")        End If        Resume Next    End Sub    Sub f3()        On Error GoTo ErrorHandler        Throw New DivideByZeroException()        Exit SubErrorHandler:        If Not TypeOf Err.GetException Is DivideByZeroException Then            Throw New Exception("#EHC2 - Error statement failed")        End If        Resume Next    End Sub    Sub f4()        On Error GoTo ErrorHandler        Dim i As Integer = 0        i = 5 / i        On Error GoTo 0        If i <> 1 Then            Throw New Exception("#EHC3 - Error Statement failed")        End If        Exit SubErrorHandler:        i = 5        Resume   ' Execution resumes with the statement that caused the error    End Sub    Sub f5()        On Error GoTo ErrorHandler        Error 6    ' Overflow Exception        Exit SubErrorHandler:        If Err.Number <> 6 Then            Throw New Exception("#EHC4 - Error Statement failed")        End If        Resume Next    End Sub    Sub f6()        On Error GoTo ErrorHandler        Dim i As Integer = 0, j As Integer        i = 1 / i        On Error GoTo 0  ' Disable error handler        On Error Resume Next        i = 0        i = 1 / i ' create error        If Err.Number = 6 Then  ' handle error            Err.Clear()        Else            Throw New Exception("#EHC5 - Error Statement failed")        End If        i = 1 / i        On Error GoTo -1        If Err.Number <> 0 Then            Throw New Exception("#EHC6 - Error Statement failed")        End If        Exit SubErrorHandler:        Select Case Err.Number            Case 6                i = 1            Case Else                Throw New Exception("#EHC7 - Error Statement failed")        End Select        Resume    End Sub    Sub Main()        f2() : f3() : f4() : f5() : f6()    End SubEnd Module

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?