COR_E_EXCEPTIONを使用します。リソースと実行時間が消費されます。例外をスローするのは、予測可能なイベントやフロー制御を処理するためではなく、本当に異常な条件を処理する場合のみです。ライブラリを開発する場合など、メソッド引数が無効な場合は例外をスローするのが妥当な場合があります。これは、メソッドが有効なパラメーターを使用して呼び出されることを想定しているためです。無効なメソッド引数が使用エラーの結果でない場合は、異常なことが発生したことを意味します。逆に、ユーザー入力が無効な場合は例外をスローしないでください。これは、ユーザーが無効なデータを入力する場合があるためです。代わりに、ユーザーが有効な入力を入力できるように再試行メカニズムを指定します。使用エラーを処理するために例外を使用する必要もありません。使用して、使用エラーを特定して修正します。戻りコードで十分な場合は例外をスローしないでください。戻りコードを例外に変換しないでください。例外を定期的にキャッチし、無視してから処理を続行します。例外を再スローする多くの場合、例外ハンドラーは単に例外を呼び出し元に渡す必要があります。これは、ほとんどの場合、次の場合に発生します。ライブラリ内のメソッドの呼び出しをラップします。致命的な例外が発生したアプリケーションまたはライブラリ。例外ハンドラーは、例外をログに記録してから、例外を再スローできます。ステートメントを使用することです。これにより、例外が呼び出し元に伝達されるときに、すべての呼び出し履歴情報が保持されます。次の例を使って説明します。以上の呼び出しをラップします。