objective-c 的用self和不用引用变量的区别

self相当于c++里面的this,表示类的对象本身。

加个self.是为了调用对应的set方法,如果不加,就不调用,不掉用就会造成引用计数的retainCount不加一,不加一就会被直接释放,结果就是在数据源那个方法中得到空值,没法使用,程序崩溃。

所以需要调用对应的方法就加上self. ,不需要就不加。

例:

- (void)viewDidLoad
{
    [super viewDidLoad];
    NSArray * array = [[NSArray alloc] initWithObjects:@"Luke", @"Leia", @"Han", @"Chewbacca", @"Artoo", @"Threepio", @"Lando", nil];
    self.pickerData= array;
    [array release]; //如果不加self.就会在这里把array直接完全释放,结果array就没法用了。
}





Last modification:January 1st, 1970 at 08:00 am
如果看了这个文章可以让你少加会班,可以请我喝杯可乐
已打赏名单
微信公众号

Leave a Comment