美文网首页
iOS项目兼容ARC和非ARC代码

iOS项目兼容ARC和非ARC代码

作者: 言己言 | 来源:发表于2017-10-29 19:24 被阅读0次

什么是ARC

在iOS5以后的版本中,都有ARC机制。ARC的全拼就是:Automatic Reference Counting,自动引用计数也就是内存自动回收的意思。在工程中使用ARC非常简单:只需要像往常那样编写代码,只不过不用写retain,release和autorelease三个关键字,这是ARC的基本原则。当ARC开启时,编译器将自动在代码合适的地方插入三个关键字,而作为开发者,完全不需要担心编译器会做错。

1、项目整体更改机制

在项目创建的时候,可以选择是否带有ARC机制。如果创建完项目后,需要修改项目的ARC机制,可以通过以下方法。

点击项目名称,依次点开TARGETS-->Build Settings-->Apple LLVM 9.0 - Language - Objective C

然后会看到有Objective-C Automatic Reference Counting选项,通过选择YES/NO来选择是否支持ARC机制。如下图所示。

项目是否支持ARC

2、ARC项目中某些文件不使用ARC机制

如果只想修改ARC项目中的不支持ARC机制的文件,例如从第三方库引入的文件,可以通过修改对应文件是否支持ARC实现:

点击项目名称,依次点开TARGETS-->Build Phases-->Compile Sources

然后在Compiler Flags选项处修改需要禁止ARC机制的文件,双击并输入-fno-objc-arc,如下图所示。

ARC项目中文件指定不支持ARC

3、非ARC项目中某些文件使用ARC机制

同2步骤,输入-fobjc-arc即可

相关文章

网友评论

      本文标题:iOS项目兼容ARC和非ARC代码

      本文链接:https://www.haomeiwen.com/subject/playpxtx.html