Maison > Questions et réponses > le corps du texte
我们都知道属性的赋值是调用属性的setter方法, 可是成员变量是如何赋值的呢? 他的内部实现原理是什么?
ringa_lee2017-05-02 09:29:14
@implementation ViewController
{
UIView *_iconView;
}
- (void)viewDidLoad {
[super viewDidLoad];
NSLog(@"%@", self->_iconView);
NSLog(@"%@", _iconView);
}
过去多啦不再A梦2017-05-02 09:29:14
Je pense que je veux poser des questions sur la différence entre ivar et propriété.
propriété = ivar+getter+setter
Par exemple
property (assign) int a générera une variable membre de _a par défaut, que nous appelons ivar
et générera également une méthode setter, qui ressemble à ceci :
-(void)setA:(int)a {
_a = a;
}
Une méthode getter sera également générée, qui ressemble à ceci :
-(int)a {
return _a;
}
En même temps, cela donnera à _a quelques buffs de gain, tels qu'une référence forte forte et une référence faible faible pour contrôler le cycle de vie de cette variable.
L'immobilier n'est donc qu'une forme de programmation, vous n'avez pas besoin d'y prêter trop d'attention, vous pouvez complètement suivre votre propre routine.