objective-c - 成员变量如何赋值的
怪我咯
怪我咯 2017-05-02 09:27:14
0
2
490

我们都知道属性的赋值是调用属性的setter方法, 可是成员变量是如何赋值的呢? 他的内部实现原理是什么?

怪我咯
怪我咯

走同样的路,发现不同的人生

membalas semua(2)
左手右手慢动作
@implementation ViewController

{
    UIView *_iconView;
}

- (void)viewDidLoad {
    [super viewDidLoad];

    NSLog(@"%@", self->_iconView);
    NSLog(@"%@", _iconView);
}
过去多啦不再A梦

Saya rasa saya ingin bertanya tentang perbezaan antara ivar dan harta.
harta = ivar+getter+setter

Sebagai contoh
harta (serahkan) int a akan menjana pembolehubah ahli _a secara lalai, yang kami panggil ivar
dan juga akan menjana kaedah penetap, yang kelihatan seperti ini:

-(void)setA:(int)a {
    _a = a;
}

Kaedah getter juga akan dihasilkan, yang kelihatan seperti ini:

-(int)a {
    return _a;
}

Pada masa yang sama, ia akan memberikan _beberapa kelebihan keuntungan, seperti rujukan kuat yang kuat dan rujukan lemah yang lemah untuk mengawal kitaran hayat pembolehubah ini.

Jadi harta hanyalah satu bentuk pengaturcaraan, anda tidak perlu memberi terlalu banyak perhatian kepadanya, anda boleh mengikuti rutin anda sendiri sepenuhnya.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!