📄 exceptionhandlingc.vb
字号:
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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -