変数があるself.position
とします。その値が変更されるたびに Xcode を壊すにはどうすればよいですか (多くのメソッドで変更される可能性があります)。
質問する
14823 次
4 に答える
28
条件付きブレークの場合:
- Cmd+option ブレークポイントをクリック
- 次のようにブレーク条件を追加します。
値が変更されるたびに中断する場合:
- 単純なセッター (およびクリーンなコードのためのゲッター) を実装します。
- セッターにブレークポイントを追加します。
誰がセッターを呼び出したかを確認したい場合は、スタック トレースの次の行を見てください (私の例では viewDidLoad ):
アップデート:
ウォッチポイントの追加
(lldb)
プロンプトがコンソールに表示されるように、任意の場所で中断します- 入力し
watchpoint set variable _position
ます (_position を監視したい iVar に置き換えます) - 新しく作成したウォッチポイントに割り当てられたウォッチポイント番号をメモします。
- 条件分岐のウォッチポイントを変更します。
watchpoint modify -c "_position < 0.5" 1
ここで、引用符で囲まれた式は条件で、最後の数字は #3 で書き留めたウォッチポイント番号です。 - 走り続けます。値が条件に一致するたびにブレークし、スタック フレームを調べて呼び出し元を理解できるようになります。
于 2013-08-09T15:24:51.000 に答える
5
これを行う簡単な方法は、ウォッチ ウィンドウで変数を右クリックし、ウォッチ変数オプションを選択することです。値が変更されると、Xcode は警告を発します。
または、Key-Value Observing をご覧ください。
于 2013-08-09T15:27:21.810 に答える
2
のセッターをオーバーライドしposition
て、変数を設定するときにブレークポイントを設定できます。
于 2013-08-09T15:27:49.373 に答える