- 23 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 00:41:51.30 ID:GufJ21C4.net]
- 例えばこうしたら
@interface test(){ int _iHensu, _hensu; } @property (assign)int hensu; @end @implementation test @synthesize hensu = _iHensu; - (void)test{ _hensu = 10; _iHensu = 90; NSLog(@"h1 %d", _hensu); //10 NSLog(@"h2 %d", self.hensu);//90 } @synthesize で hensuに_iHensuを登録すれば self.hensuで呼び出されるのは_iHensuになる感じ これはプリミティブ型のintだからassignだけど オブジェクト型のインスタンスを MRRチックに自分でretainするならセッター使わなくても問題ないよ もちろんreleaseも必要 セッターゲッター使うとそれを省略出来るってこと retainもセッターの中で こんな感じの関数が呼ばれるだけだから - (void)setHensu:(id)value{ if(_iHensu != value){ id oldValue = _iHensu; _iHensu = (value != nil ? [value retain] : nil); if(oldValue != nil) [oldValue release]; } }
|

|