ARC在SDK4.0的时候增加的,因为要和曾经的项目融合,就会有arc和非arc文件的混合。
当然,也就这两种情况:
1.自己的旧项目没有使用ARC,可是引入的第三方库却是使用了ARC的。
2.自己的新项目使用了ARC,可是引入代码却没有使用ARC。
这两种情况下,直接肯定是通只是编译的。能够通过升级旧项目,让其使用ARC来解决,但这个办法有时候会非常麻烦。
有一个简单的办法就是,能够指定单个文件是否採用ARC来进行编译。
方法就是在Build Phase里面的Compile Source里面找到须要特殊处理的文件,加上编译选项(Compiler Flags),详细针对上面两种情况有所差别。
1.对于第一个情况,给採用了ARC的源文件,加入-fobjc-arc选项
2.对于另外一种情况,加入-fno-objc-arc
每天一小步。