在Apple文档中,我看到ARC的最低要求是iOS 4.3,但在WWDC 2011视频中,他们谈到了iOS 4.0中的最低要求。
关于最小的iOS版本ARC将起作用吗?
ARC会在iOS 4.0上运行吗?
答案 0 :(得分:2)
不知道你在哪里看到了4.3(你有链接吗?) - 但在"Transitioning to ARC Release Notes" Apple说iOS 4。
答案 1 :(得分:1)
ARC是一种编译器级功能。因此,如果您能够使用最新的LLVM 3编译器编译代码,它应该可以工作。需要GCC编译器的一些非常古老的代码库(大多数是旧的C语言第三方库)将无法工作(此类代码库非常罕见)
在iOS 5 / Lion之前的操作系统上无法使用归零弱引用(即ARC利用的运行时功能)。但是没有弱引用的ARC仍然有用。
答案 2 :(得分:1)
ARC是编译器而不是设备的功能,因此从技术上讲,它与正在使用的操作系统无关。两者之间的差异是弱引用的实际归零。请阅读this以获取有关它的更多信息。
在具有5.0之前的操作系统的设备上运行使用ARC编译的应用程序将基本上手动将引用清零,而不是实际将其清零。自动归零是ARC的核心功能,也是您不再需要调用dealloc
或释放对象的原因。