什么是ARC
在iOS5以后的版本中,都有ARC機制。ARC的全拼就是:Automatic Reference Counting,自動引用計數也就是內存自動回收的意思。在工程中使用ARC非常簡單:只需要像往常那樣編寫代碼,只不過不用寫retain,release和autorelease三個關鍵字,這是ARC的基本原則。當ARC開啟時,編譯器將自動在代碼合適的地方插入三個關鍵字,而作為開發者,完全不需要擔心編譯器會做錯。
1、項目整體更改機制
在項目創建的時候,可以選擇是否帶有ARC機制。如果創建完項目后,需要修改項目的ARC機制,可以通過以下方法。
點擊項目名稱,依次點開TARGETS-->Build Settings-->Apple LLVM 9.0 - Language - Objective C
然后會看到有Objective-C Automatic Reference Counting選項,通過選擇YES/NO來選擇是否支持ARC機制。如下圖所示。
項目是否支持ARC
2、ARC項目中某些文件不使用ARC機制
如果只想修改ARC項目中的不支持ARC機制的文件,例如從第三方庫引入的文件,可以通過修改對應文件是否支持ARC實現:
點擊項目名稱,依次點開TARGETS-->Build Phases-->Compile Sources
然后在Compiler Flags選項處修改需要禁止ARC機制的文件,雙擊并輸入-fno-objc-arc,如下圖所示。
ARC項目中文件指定不支持ARC
3、非ARC項目中某些文件使用ARC機制
同2步驟,輸入-fobjc-arc即可