我使用xcode 4.3.1將非ARC項目轉換爲弧。我想知道什麼Apple LLVM編譯器3.1 - 警告Objective-C++自動引用計數
構建設置目的C++自動引用在
Apple LLVM compiler 3.1 - Warnings
部分意味着計數
。可以推測它會打開或關閉ARC的某種警告,但我不完全確定它的含義。
我使用xcode 4.3.1將非ARC項目轉換爲弧。我想知道什麼Apple LLVM編譯器3.1 - 警告Objective-C++自動引用計數
構建設置目的C++自動引用在
Apple LLVM compiler 3.1 - Warnings
部分意味着計數
。可以推測它會打開或關閉ARC的某種警告,但我不完全確定它的含義。
如果選擇了警告,在Xcode 4打開最右邊的選項卡,然後在頂部選擇第二個圖標(波浪線),你會看到Apple幫助該項目,它說:
目的-C++自動引用計數ABI不兼容性
CLANG_WARN_OBJCPP_ARC_ABI
在編譯使用自動引用計數,報告的代碼與傳統的手工引用計數代碼鏈接ARC代碼時,可能會導致ABI問題目標-C++代碼。
此外,我不相信使用「fno-objc-arc」標誌來避免不必處理ARC。這樣做的人認爲他們有完美的無泄露代碼,堅持ARC命名啓發式的各個方面。我希望我可以對自己的保留/釋放/自動釋放代碼有信心!而且,ARC代碼通常更小更快。
謝謝,這節省了我一些時間。 – GoldenJoe 2013-09-04 16:21:29
你確定它說Objective - ** C++ **? – trojanfoe 2012-07-19 12:38:46
好點,我甚至沒有注意到!但我確定它說Objective-C++。 – Darren 2012-07-19 12:44:33
最好不要將nonARC項目轉換爲ARC,而應在構建階段爲非ARC的文件添加「-fno-objc-arc」。 – Ranjit 2012-07-19 12:44:39