■ エラー処理 (例外処理)
- エラー処理はそのまま利用可能
- 新しい例外処理に変更してもよい
Visual Basic 6.0 同様、以下のような Visual Basic 固有のエラー処理は Visual Basic .NET でも利用することができます。
Sub Proc1
On Error GoTo ErrProc
' エラーの起きそうな処理
Exit Sub
ErrProc:
' エラー処理コード
Resume Next
End Sub
もちろん、
On Error Resume Next
も利用できます。
これらに加え、Visual Basic .NET では以下のような 「例外処理」 を利用することもできます。
Sub Proc1
Try
' エラーの起きそうな処理
Catch
' エラー処理コード
End Try
End Sub
例外処理は、
- 見やすい
- 柔軟な例外処理が可能
- ネストが可能
- 例外オブジェクトの利用
などの特徴を持ちます。これにより、より高度なエラー処理が可能になります。ただし、同じプロシージャの中で、エラー処理と例外処理の両方を利用することはできません。
Visual Basic 固有のエラー処理は Visual Basic .NET でも利用できるため、アップグレードウィザードによる変更は行なわれません。
エラー処理に関しては、Visual Basic 6.0 のプロジェクトで特に注意することはありません。
Resume や Resume Next の機能は非常に魅力的ですが、エラー処理によってエラーが回避されない場合、エラートラップとエラー処理のループを抜け出せずに、結局アプリケーションを強制終了させなければならない状況に陥ることがあります。また、Resume を行なうためには非常にコストがかかります。このような理由から、Visual Basic .NET では、例外処理のほうをお勧めします。