私はこの質問に特化したトピックを検索しましたが、私の経験に近いものは見つかりませんでした。私が答えを見過ごしたならば、私を許してください。私はGDBと例外ポイント、ブレークポイントなどに精通しています...しかし、GDBとLDBのデバッグの次のテストでは、私には妥当な応答がありませんでした。例外ブレークポイント - LLDB結果対GDB
グローバルテストのXcode 4.2
- 値。1
- 新しいシングルウインドウプロジェクト
- アークが
- ストーリーボードが
ケース1有効有効(変更なし/ wのデフォルトのテンプレート) - GDBデバッガ
例外ブレークポイント値:
を- 例外 - すべて 投げ
- 引数 - - 上
- 休憩なし
- 結果 - ノークラッシュ
ケース2 - LLDBデバッガ
例外ブレークポイント値:
- 例外 - すべて
- ブレイクオン - スロー
- 引数なし -
- 結果 - Sigbartによるクラッシュ&マシンコード;識別可能なスタックトレース
ケース3 - LLDBデバッガ
例外ブレークポイントの値はありません:
- 例外 - Objective-Cの 上
- ブレイク -
- 引数を投げる - なし
- 結果 - クラッシュなし
ケース4 - LLDBデバッガ
例外ブレークポイント値:
- 例外 - なし
- 結果 - - Sigbartとクラッシュ
- 引数を投げる - 上のC++
- ブレイクマシンコード。識別可能なスタックトレース
質問:私は単に例外のオプションとして、「Objective-Cの」を選択すると、行くための安全な方法であることを想定する必要があり、または私は潜在的に明白な問題を無視するのですか?ありませんかXcode 4.2.1以降、LLDBを使用することをお勧めします。しかし、私は上記の結果に不思議です。
すべてのコミュニティの対応に感謝します!
デバイスやシミュレータのどちらを実行していても違いはありますか?私は非objc(すなわち、C + +の)起動時にシミュレータで実行されている例外を実行することを思い出すようです。 –
おかげで@MikeKの提案!あなたは正しいです。デバイス上でテストを再現する場合、「Exception:All」または「Exception:C++」が選択されても、クラッシュは発生しなくなりました。私はまだ後世のシミュレータでクラッシュがなぜ発生するのか不思議です。 >。< –