A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

ARC(自动释放内存)的概念和原理
指针可以分为:
强指针:默认情况下,所有的指针都是强指针,关键字strong
弱指针:weak关键字修饰的指针
ARC:(automatic reference(引用,参考) counting)就是自动引用计数器,即ARC
MRC(Manual(手动的) Reference Counting)手动管理内存
ARC的基本原则:
不要在代码里,再手动写retain、release、autorelease三个关键字就好,ARC开启时,编译器会自动在代码合适的地方插入这三个关键字(完全不用担心编译器会做错...)
ARC的工作原理:
ARC是Object-C编译器的特性,ARC要做的只是在编译器编译的时候,自动在合适的位置插入release或者autorelease
ARC的判断准则:
MRC的判断准则是:当引用计数器retainCount的值为0,就销毁对象,回收内存。
ARC的判断准则:只要没有强指针指向对象,对象就会被释放
ARC使用的标志:
iOS5之后,创建项目默认的都是ARC(学习MRC的时候,我们第一步,都是要先把ARC关闭)
1)不允许调用对象的release方法
2)不允许调用autorelease方法
3)重写父类的dealloc方法时,不能再调用[super dealloc]

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马