2012-02-27 91 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