実行はが第二のcatchブロックに入っていないが、例外がスローされます呼び出しスタックを更新すると、次のcatch
句は無視されます。
あなたはIDEは、おそらく重要なデバッグ情報が不足しているため、誤って二catch
句を入力するときに実行が停止表示されるようお勧めできませんリリースモードでデバッグしているので、それは単にそのように見えます。
実行が何らかの形で2番目のcatch
句になった場合、その時点で停止することは実際には意味がないことに注意してください。throw
文で停止することになります。
実際に何が起こっているかは、最初のthrow
で実行が停止していて、IDEが正しく表示していないということです。
ストーリーの道徳的; リリースモードでデバッグしないでください。 VS2015を実行している場合、実際にはリリースモードのデバッグエクスペリエンスはサブパールになります(この警告が以前のバージョンで表示されたかどうかはわかりません)。
UPDATE:それはまだデバッグモードで起こるように問題がリリースモードでのデバッグに関連していないようです。それでも、デバッグはリリースモードで実行しないでください。私は解決策を洗い流すと、それが問題を解決するかどうかを調べるでしょう。それが汗をかくことがないのであれば、コードは正しく動作しています。IDEが正しく実行されていない箇所が正しく表示されているわけではありません。
奇妙なことに、なぜあなたはリリースモードでデバッグしていますか? – user1666620
@CharlesMager例外を再現すると、同じ試行の次のキャッチブロックではなく、より高いレベルでキャッチされるという印象を受けました。 – user1666620
@ user1666620もちろん、あなたは正しいです - 申し訳ありませんが、私はあなたのブレークポイントがどこにあるのか分かりませんでした! –