以下のように合成した後、変数名で自己またはアンダースコアを使用することに非常に混乱しています。
In .h file:
@property(nonatomic, strong) NSMutableArray *users;
In .m file:
@synthesize users = _users;
を使用するときの私の理解に基づいてself.users
、OSはsetメソッドで以前に割り当てられたメモリを確実に解放するため、明示的に注意する必要はありません。
_users
ユーザーのインスタンス変数であり、通常は users 変数にアクセスするときに使用する必要があります。その値を変更するために使用_users
すると、KVOデリゲートが起動されず、ユーザーの値の変更を監視するクラスに通知されません。
また、self.users
以下のようにメソッド名でダミー変数を区別することができます。
- (void)assignUsers:(NSMutableArray*)users {
self.users = users;
}
or を使用しているときに間違っている、または不足していることを理解したことがあるかどうか誰かに教えてもらえます_users
かself.users
?