1

デバッグするときは、たとえばstrという名前のプライベートNSStringメンバーの値を確認する必要があります。後:

    self.str = xxxxxxx;

コンソールに「poself.str」と入力しましたが、「(NSString *)$ 37 = 0x00000000」しか取得できなかった
ので、次のことを試しました。

    NSLog("%@", self.str);

…それから私は文字列値を見ました。

コマンド「po」を使用してvarの値を確認できないのはなぜですか?

これは、 gdbではなくlldbをデバッガーとして使用していたためです。したがって、「po」(print-object)コマンドはポインタのアドレスのみを表示できます。lldbの使用中にオブジェクトの説明を出力することに関する解決策はありますか?

更新:私はselfそれ自体が利用できないことに気づきました。問題は静的変数であるクラスインスタンスと関係があると思います。理由poがのポインタを見つけることができないということselfですか?

4

1 に答える 1

1

ドット表記なしでメソッドのように呼び出す必要があります

po [self str]

または、バッキング変数名がわかっている場合は、直接印刷できます

po _str
于 2012-05-23T08:46:32.907 に答える