黑马程序员技术交流社区

标题: OC内存管理的问题 [打印本页]

作者: vitanie    时间: 2015-3-9 00:50
标题: OC内存管理的问题
Person *p = [[Person alloc] init]; // P 1
    NSUInteger c = [p retainCount];
    NSLog(@"计数器:%ld",c);
    [p retain];     //p 2
     c = [p retainCount];
    NSLog(@"计数器:%ld",c);
    [p release]; //p 1
    c = [p retainCount];
    NSLog(@"计数器:%ld",c);
    [p release];  //野指针 这里p的引用应该为0 才是,但是还是1,必须将p =nil,这时 p retainCount的值才是0
    c = [p retainCount];
    NSLog(@"计数器:%ld,%p",c,p);
    //p.age = 10;对象已经被释放,将出现内存错误




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2