3つの行を1つの行で行うには、どのような理由がありますか?それは、清潔でシンプル、かつ十分に簡単なようだラウンドアバウトでプロパティになるオブジェクトを初期化するのはなぜですか?
self.navigationController = [[UINavigationController alloc] initWithRootViewController:rootViewController];
:
UINavigationController *aNavigationController = [[UINavigationController alloc] initWithRootViewController:rootViewController];
self.navigationController = aNavigationController;
[aNavigationController release];
...と1つのラインで同じこと:ここで
はdeveloper.apple.comからいくつかのコードです。私は過去にプロパティが保持されていないという問題を抱えていました。オブジェクトの解放が原因でオブジェクトが破棄されました(これまでのところ、retain属性が設定されています)。 1行の式を使用すると、ダンディーのように動作します。
私は、プロパティが時々保持されていなかった理由を理解しました。プロパティの値を設定するときにsetterメソッド(retain属性を実装する)ではなく、Class変数を使用する必要がありました.property =プロパティの代わりに=。あなたのすべての協力に感謝します! – JoBu1324