黑马程序员技术交流社区

标题: OC基础笔记,【考点】ARC使用特点及注意事项 [打印本页]

作者: 丿白衬衫    时间: 2015-9-24 20:34
标题: OC基础笔记,【考点】ARC使用特点及注意事项
1、ARC特点总结
        (1)不允许调用release,retain,retainCount
        (2)允许重写dealloc,但是不允许调用[super dealloc]
        (3)@property的参数:
                strong:相当于原来的retain(适用于OC对象类型),成员变量是强指针
                weak:相当于原来的assign,(适用于oc对象类型),成员变量是弱指针
                assign:适用于非OC对象类型(基础类型)
2、ARC使用注意事项
        1)ARC中,只要弱指针指向的对象不在了,就直接把弱指针做清空(赋值为nil)操作。
        2)__weak Person *p=[[Person alloc] init];//不合理,对象一创建出来就被释放掉,对象释放掉后,ARC把指针设置为nil。
                 __weak Student *stu = [Student new];
                 //1  Student new
                       //   产生空间
                 //2  弱指针 stu 指向
                         //弱指针指向对象销毁的过程
                        //1) 释放对象空间
                        //2) stu = nil
        3)ARC中在property处不再使用retain,而是使用strong,在dealloc中不需要再
        [super dealloc]。
        @property(nonatomic,strong)Dog *dog;
        // 意味着生成的成员变量_dog是一个强指针,相当于以前的retain。
        4)如果换成是弱指针,则换成weak,不需要加_ _。




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