0

clang アナライザーでメモリ リークが発生したときProduct > Analyze、私は理解できません。次のコードの最初の行で初期化されたものを2行目にリークしていると言っています

[[testView newScore] setText: [NSString stringWithFormat: @"+%d", addScore]];
[[testView newScore] setTextColor: [UIColor greenColor]];

Instruments は現在動作していないため (SDK 4.3 で Xcode 4.1 を使用しています)、このリークをこれ以上調査することはできません。

これがメモリ リークである理由がわかりますか。プロパティnewScoreは次のように定義されます。

@property (nonatomic, retain) UILabel *newScore;

testViewサブクラスですUIView

編集: アナライザー出力のスクリーンショット: ここに画像の説明を入力

読んでくれてありがとう!

4

1 に答える 1

5

アナライザー出力のスクリーンショット (問題のある制御フローを指す青い矢印) を投稿できますか?


ダープ; 明らかなことを見逃しました。ごめん。メソッドには名前が付けられnewScorenew*プレフィックスは、返されるオブジェクトが +1 保持カウントであることをコンパイラに示します。

メソッドの名前を変更すると、すべてがうまくいきます。

于 2011-07-24T19:00:25.937 に答える