您的位置:首页 > 其它

ARC小解(一)

2015-09-27 17:32 253 查看
ARC(Automatic Reference Counting),就是代码中自动加入retain和release

ARC不像是Java的垃圾回收机制(运行时释放),ARC只是一种编译特性。

在ios5开始使用ARC机制,有了ARC机制之后我们便可以专注于我们的逻辑代码,而无需再分心去使用retain、release、autorelease、dealloc等去管理内存

在XCode5之前每次创建工程都会有是否选择使用ARC机制,在XCode5之后APPLE就强制的使用ARC。



如果我们想要设定单个【.m】文件的ARC设定,我们可以是做以下设定。



ARC的释放对象判断准则:

没有强指针指向对象时,就会释放对象,那么只要有强指针指向对象,对象就不会被释放;

*指针有强弱之分:强指针(__strong关键字修饰),所有的对象默认情况下都是强指针。

弱指针(__weak关键字修饰)

使用ARC时注意的几点:

retain、release、autorelease、dealloc有编码器自动插入,不能在代码中调用

dealloc可以重载,但是我们最后不能再调用[super dealloc]

强引用:(__strong:默认)





弱引用:(__weak)弱参照有一个特征,即当参数对象失去所有者之后,变量会被自动赋值nil

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: