我有一個與ARC代碼和非ARC代碼的應用程序。當我嘗試將非ARC代碼編譯爲ARC時,編譯器會捕獲。當我的ARC代碼在沒有ARC的情況下被錯誤編譯時,如何導致編譯時錯誤/注意事項?顯然,代碼將被編譯。它只會泄漏。靜態分析器將會發現問題。我寧願找到一種方法在我的ARC代碼中留下編譯指示或定義。如何在課堂上要求ARC?
以下是蘋果在objc-api.h
定義:
/* OBJC_ARC_UNAVAILABLE: unavailable with -fobjc-arc */
#if !defined(OBJC_ARC_UNAVAILABLE)
# if __has_feature(objc_arr)
# define OBJC_ARC_UNAVAILABLE __attribute__((unavailable("not available in automatic reference counting mode")))
# else
# define OBJC_ARC_UNAVAILABLE
# endif
#endif
我的C-宏觀福較弱。我將如何使用它?或者,也許有一個更好的符號來檢查?
P.S.我問,因爲我從可重用的庫中構建了大部分應用程序。我想確保每個文件都以正確的方式編譯。
謝謝您的宏。 – adonoho