码迷,mamicode.com
首页 > 其他好文 > 详细

Objective-C:08_内存管理_ARC编译器特性

时间:2014-09-24 19:12:57      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:style   color   使用   ar   strong   文件   数据   div   sp   

自动生成代码,不是垃圾回收
 
ARC的判断准则:
        只要没有强指针指向对象,就会释放对象
 
1、ARC特点
    -》不允许调用release、retain、retainCount
    -》允许重写dealloc,但是不允许调用[super dealloc]
    -》@property的参数
            strong:成员变量是强指针(适用于OC对象类型)
            weak  :成员变量是弱指针(适用于OC对象类型)
            assign:基本数据类型
    -》以前的retain改用strong,其他一次不变
指针分两种:
    强指针:默认情况下,所有的指针都是强指针(_ _ strong 默认可以不写)两个下划线
    弱指针: (_ _weak) 
        __weak Person *p = [[Person alloc] init];
 
 
weak的使用场景:
        循环引用。
    当发生循环引用的时候(人有只狗,狗有主人),这个时候需要一个使用strong一个使用weak
 
 
当项目使用ARC之后,如果某个文件不想使用ARC,那么就在Build Phases→Comlile Sources中双击这个文件
    在弹出的框中填写:-fno-objc-arc
如果项目不是ARC,其中的某个文件想使用ARC,那么就在Build Phases→Comlile Sources中双击这个文件
    在弹出的框中填写:-f-objc-arc
 
 
 
 
 
 

Objective-C:08_内存管理_ARC编译器特性

标签:style   color   使用   ar   strong   文件   数据   div   sp   

原文地址:http://www.cnblogs.com/yaofch107/p/3990808.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!