2012-02-27 94 views
1

在苹果文档中,我看到ARC对iOS 4.3的最低要求是,但在WWDC 2011视频中,他们谈论了iOS 4.0的最低要求。
什么最小的iOS版本ARC可以工作?
ARC会在iOS 4.0上运行吗?
对ARC的最低要求使用

回答

1

ARC是编译器的功能,而不是设备,所以从技术上讲,它与正在使用的操作系统无关。两者之间的差异在于弱引用的实际调零。有关它的更多信息,请阅读this

在5.0以前的操作系统的设备上运行使用ARC编译的应用程序基本上会手动清零引用,而不是实际将它们清零。自动调零是ARC的核心功能,因此您不再需要致电dealloc或发布对象。

+2

是和不是。 ARC依赖于某些版本的MacOS/iOS未附带或无法安装的组件。另外 - 引用的自动调零和不需要调用释放是两个独立的功能。 – Steve 2012-02-27 03:17:39

1

ARC是编译器级功能。所以如果你能用最新的LLVM 3编译器编译你的代码,它应该可以工作。一些需要GCC编译器的非常老的代码库(大多是旧的C语言第三方库)将不起作用(这种代码库非常非常罕见)

调零弱引用,ARC利用的运行时功能,在iOS 5/Lion之前的操作系统上不可用。但没有弱引用的ARC仍然可以工作。

+1

即使新的C库不支持ARC。 – Steve 2012-02-27 03:20:09

+0

@Steve是的,这是真的。但Xcode可以选择禁用特定文件/类的ARC。 – Kamarshad 2012-02-27 08:04:45

+0

我猜@Steve正在谈论静态库。 – Mugunth 2012-02-27 10:05:45