在你了解了引用技术内存管理之后,当然要使用ARC。
ARC不是在运行时工作,一种自动化的手动内存管理。方便高效。
兼容以往的库也十分方便:只需在target中Build Phases中得CompileSource中添加-fno-objc-arc,也可以手动更改库文件,支持arc
自动化的retain release。降低开发者不少工作。
初学者应该了解了引用计数之后再去使用。
兼容下
#if __has_feature(objc_arc)
#define AUTORELEASE(exp) exp
#define RELEASE(exp) exp
#define RETAIN(exp) exp
#else
#define AUTORELEASE(exp) [exp autorelease]
#define RELEASE(exp) [exp release]
#define RETAIN(exp) [exp retain]
#endif