簡単な答えを求める簡単な質問です。デモンストレーションとしてコードは必要ありません。関数を呼び出すと、例外が返され、関数全体が停止します。例外を無視して機能を継続するにはどうすればよいですか?キャッチして続行しますか? C#
答えて
try {..} catch {..}文を使用できます。 ここに参考文書があります。 ください... catch文は、この仕事をする必要がありますhttps://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/try-catch
try
{
MyFunctionThatErrors();
}
catch{}
:
try {
// your code that might throw an exception here
} catch {
}
// code here will execute even if there is an exception
しかしは、...してみてくださいcatch文は、フロー制御文として動作するように設計されていません。正当な理由がなくても例外を無視してはいけません。最初にスローされる例外は避けるべきです。
たとえば、文字列パラメータの形式が間違っていると、Convert.ToInt32
は例外をスローできます。無効なユーザー入力を検出する方法として、try ... catchを使用しないでください。例えば正規表現のような他の方法を使って入力が有効かどうかを調べるべきです。
例外は無視できません。
キャッチしないと、誰かがキャッチして処理するか、呼び出しスタックの先頭に到達してプログラムが停止するまで、例外が呼び出しスタックを伝播します。
これを回避するには、単に例外をキャッチし、それを処理する方法を決定するだけです。取り扱う場合、それはあなたが例外をキャッチしたときに、それは、単に...何もしない何もしないことを意味:
try
{
SomeFnWhichThrowsAnException();
}
catch
{
// NO-OP
}
(「ノーオペレーション」の短い)// NO-OP
コメントは、私は、「取扱いることを示すために使用する指標であり、例外的にに故意には何もせず、将来suhコードを読んでいる誰かの潜在的な誤解を避け、空のcatchブロックをエラーや見落としとして解釈します。
例外に応答して何もしないコメントと「正当な理由」があっても、これは非常に疑わしく、非常に悪いコードの匂いです。
(これは、スタックオーバーフローなどまたはメモリのうち、例外が含まれることを考慮し、具体的に非常に特定の例外を無視するか、特定の状況でそうすることが、すべての可能性を除いは非常unadvisableあるを無視することがより一般的かもしれ条件など)。
- 1. C#、Whileループ、キャッチ、ログ、続行
- 2. tarからエラーをキャッチして処理を続行します。
- 3. 致命的な例外をキャッチして続行します
- 4. C - Enterキーを押して続行しますか?
- 5. C++、例外を無視してコードを続行しますか?
- 6. キャッチして続けてください
- 7. C++:キャッチブロックがキャッチしませんか?
- 8. Powershellキャッチして再試行しますか?
- 9. C++で編集して続行しますか?好ましくはCode :: Blocks?
- 10. 「キャッチ」エラー継続実行
- 11. 試してください/キャッチしていますが、エラーでは続行しません。-ErrorAction Stop
- 12. "キャッチしたアクセス違反 - 気をつけて続行する"デバッグ/レポート方法
- 13. アプリケーションを終了してから処理を続行するC#
- 14. c popenはstderrをキャッチしません
- 15. 続行のすべてのタイプをキャッチする方法エラー
- 16. cURL libを使用してC/C++で例外をキャッチする
- 17. 特定のエラーをキャッチしてスクリプトを再試行しますか? - BASH
- 18. C#を使用して連続ファイルを作成しますか?
- 19. ctrl-cをキャッチしてユーザーに確認する方法はありますか?
- 20. 試行エラーなしキャッチ
- 21. global.asax(C#、.Net)以外のセッション状態イベントをキャッチしていますか?
- 22. uSCXMLからデータをキャッチしていますか?
- 23. catch(...)を使用してC++例外をキャッチできません
- 24. Quartz Schedulerはジョブを連続して実行できますか?
- 25. Enterを押して続行し、Escを押して終了するC++
- 26. Powershellの実行可能exeファイルにキャッチしてみませんか?
- 27. キャッチはすべて集約例外をキャッチしますか?クラッシュを防ぐ?
- 28. なぜCコンパイラはこのエラーをキャッチしませんか?
- 29. 例外をキャッチしてプログラムの実行を継続するのがベストプラクティスですか?
- 30. 実行C++を実行しますか?
ちょうどそれをキャッチですか?私はコードがここで必要かもしれないと思う。 – Carcigenicate
この質問とその回答が参考になる場合があります。 https://stackoverflow.com/questions/4913159/ignore-exception-in-c-sharp –