プロパティの標準合成セッターをオーバーライドしようとしました。これまでのところ、すべて問題ありません。ivar を新しい値に設定しただけです。しかし、「保持されたプロパティの保持カウントで何が起こるか」と自問しました...これを説明する良い答えが見つかりませんでした。そこでここで質問します。設定されているプロパティ セッターをオーバーライドする場合に注意しなければならretain
ないことはありますか?どうすれば正しく行うことができますか? ARCは使いません。
次に例を示します。
@property(nonatomic)NSInteger number;
- (void)setNumber:(NSInteger)number {
_number = number; // This should be fine, since it's no retained object I want to set
}
@property(nonatomic, retain)NSObject *something;
- (void)setSomething:(NSObject *)something {
_something = something; // This is not fine. As far as I know you should never do sth. like this... But how do I set it correctly?
}