8

我見過很多關於將整個項目轉換爲弧然後使用標誌告訴Xcode哪些不能轉換的信息。將單個文件轉換爲弧形?

如何將單個文件轉換爲arc?我試過了,運行良好。我可以這樣做嗎?我有點擔心,因爲如果我在這裏和那裏轉換東西,整個項目不會轉換爲弧,它們會導致內存泄漏。

回答

6

是的,你可以。但是,您需要告訴編譯器哪些文件不是ARC。這可以在您的項目設置中執行。去your project>Select the target of the app in question>Build Phases。現在拖放「Compile Sources」並選擇你不想用ARC編譯的文件,按下ENTER鍵,會出現一個小小的彈出框。在這裏你可以寫-fno-objc-arc。按Done即可完成。

編譯時,它會嘗試將自動引用計數添加到沒有-fno-objc-arc標誌的文件。使用非弧庫時非常有用,例如ASIHTTPRequest或MBProgressHud(及其他)。

+0

你怎麼知道它正試圖使用​​ARC的其他文件?它似乎記得它已將哪些文件轉換爲ARC,以及哪些文件沒有。 –

+0

如果你使用幾個不能使用ARC的庫,該怎麼辦?有很多文件需要更改,您是否必須爲所有文件分別設置標誌,還是有更好的方法? –

+0

它是一個設置爲編譯器的標誌,名稱爲Objective-C自動引用計數。 –

1

說句只有某些文件ARC使用標誌:

-fobjc-arc