我正在研究一些Objective-C代码,我希望将其转移到一个库中,或者至少与其他人共享。它需要使用ARC,如果未启用ARC,则会泄漏内存。
如果关闭ARC,使代码无法编译的正确方法是什么?
答案 0 :(得分:5)
您可以使用
在编译时检查ARC#if __has_feature(objc_arc)
答案 1 :(得分:1)
我认为更简洁的方法是将库编译为静态库。由于ARC会根据规则将发布调用合并到已编译的库中,因此,如果添加的项目是ARC或MRC,则无关紧要 - 因此对库用户来说没有麻烦。