Xcodeで変数の変更やメモリの変更を追跡する方法はありますか? Visual Studio のデータ ブレークポイントのような機能を探しています。
オブジェクトのビュー フレームが変更されている場所を知りたいです。メンバ変数にブレークポイントを設定して実行したい。その後、どこが変更されたかを特定できました。
Xcodeで変数の変更やメモリの変更を追跡する方法はありますか? Visual Studio のデータ ブレークポイントのような機能を探しています。
オブジェクトのビュー フレームが変更されている場所を知りたいです。メンバ変数にブレークポイントを設定して実行したい。その後、どこが変更されたかを特定できました。
Xcode はgdb
(またはlldb
、それはまた別の話です) を使用してデバッグ機能を実装します。gdb
Xcode にはハードウェア ウォッチポイントを設定する機能があり、Xcode にもその機能があります。
これは、メモリ エラーの一般的なデバッグに役立つページです。Xcode のデバッグ コンソール ウィンドウは、実際には単なるgdb
シェルであり、必要に応じてコマンドを入力できます。いつもお世話になっている Quinn Taylor が、この関連記事でその方法を説明しています。
直接操作したくない場合はgdb
、Xcode のデバッグ ウィンドウで変数を右クリックし、[変数を監視] を選択します。Xcode は、変数の値が変更されるたびにアラートを出します。
ハードウェア ウォッチポイントを使用できます。
追跡したい変数のアドレスを取得する必要があります ( p &my_var
gdb プロンプトに入力します)。
のようなものが出力されます0x12345678
。
gdb の場合: type watch *(int *)0x12345678
.
lldb の場合: watch set expression (int *)0x12345678
(またはw s e (int *)0x12345678
)
これは、変数がint
. このアドレスにハードウェア ウォッチポイントが作成されます。
お役に立てれば。
はい。
[実行] メニューの下に、gdb に視覚的なフロントエンドを提供する「デバッガー」があります。
また、[ビルドして実行] ボタンの横にブレークポイント ボタンがあります。それをクリックして、[実行] > [ブレークポイントの管理] でブレークポイントを管理できます。