首页 > 其他 > 详细

ARC

时间:2014-08-12 22:01:24      阅读:454      评论:0      收藏:0      [点我收藏+]

最近开是做新项目,准备尝试使用ARC,记录遇到的一些问题。

ARC是编译器特性,所以要求Xcode的最低版本为4.2。

ARC的规则:

  1. 不能调用dealloc方法(可以重写,做一些清除操作,例如delegate置空,清除非ARC管理的内存,不能调用[super dealloc],编译器会自动帮你出入该代码),不能调用retain,release,autorelease,retainCount。
  2. CFRetain,CFRelease仍正常使用
  3. NSAllocateObject 和 NSDeallocateObject 都不能使用(从没用过)
  4. 使用alloc创建对象,运行时自动来销毁对象
  5. C结构体中不能使用对象指针,推荐使用oc对象来代替C结构体
  6. id和void *之间不能随便的转换,详细请见Managing Toll-Free Bridging
  7.  不能使用NSAutoreleasePool,ARC提供autoreleasepool blocks来代替,比NSAutoreleasePool具有更高的效率(Why?)
  8. 不能使用NSZone

注意:

  在ARC使用属性时,不能使用new做前缀(应该是ARC在编译器阶段会为属性方法自动添加new做前缀)

 

ARC,布布扣,bubuko.com

ARC

原文:http://www.cnblogs.com/wustlj/p/3908423.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!