0

この質問はこれに関連してますが、より単純です。[私はこれらのばかげた質問の終わりに近づいている可能性があり、真剣なビジネスに取り掛かることができると思います:)]。

retainプロパティがあり、次のように設定します。

UINavigationController *thing = [[UINavigationController alloc] initWithRootViewController:one];
    // thing's retain count is one
navController = thing;
    // thing's retain count is still one!
[thing release];
    // now retain count is zero, which is wrong

保持カウントがゼロになる理由がわかりません。navControllerと定義されている

@property (nonatomic, retain) UINavigationController *navController;

プロパティは保持カウントを 1 増やすべきではありませんか?

4

1 に答える 1

7

問題は、セッターを呼び出す代わりに、プロパティの基になるインスタンス変数に直接割り当てていることです。プロパティ マジックは、この方法ではトリガーされません。試す

self.navController = thing;

代わりに (残りのコードは変更する必要はありません)。

于 2010-06-20T23:29:46.657 に答える