在编译单位上,可以设置ARC有效或者无效。比如对每个文件可以选择使用或者不使用ARC,一个应用程序中可以混合ARC有效或者无效的二进制形式。

  设置ARC有效的编译方法如下所示:(Xcode4.2开始默认设定对所有文件ARC有效)

    *使用clang(LLVM编译器)3.0或以上版本

    *指定编译器属性为"-fobjc-arc"

  设置ARC有效或者无效,一般两种方式:对所有文件统一操作、对部分文件操作。

  1.对所有文件统一操作

  需求:有的编程人员为了能更好的理解内存管理机制,刻意将编译器指定为ARC无效。

  操作:targets  -->  Build Settings  -->  Apple LLVM 7.1-Language-Objective C  -->  Objective-C Automatic Reference Counting  -->  将其设置为NO。

  2.对部分文件操作

  需求:Xcode中经常需要导入一些第三方的代码文件,如果项目的编译器指定为ARC机制,但是导入的文件是非ARC机制的,处理这种情况时,只要告诉编译器将这个外来的文件按非ARC规则进行编译,其他的文件照常按ARC规则编译。

  操作:targets  -->  Build Phases  -->  展开Compile Sources  -->  找到非ARC机制的文件,在其后的Compiler Flags一栏双击后,并输入-fno-objc-arc。

  需求:Xcode中经常需要导入一些第三方的代码文件,如果项目的编译器指定为非ARC机制,但是导入的文件是ARC机制的,处理这种情况时,只要告诉编译器将这个外来的文件按ARC规则进行编译,其他的文件照常按非ARC规则编译。

  操作:targets  -->  Build Phases  -->  展开Compile Sources  -->  找到非ARC机制的文件,在其后的Compiler Flags一栏双击后,并输入-fobjc-arc。

设置ARC有效或者无效的更多相关文章

  1. winform的Textbox设置只读之后ForeColor无效的解决方法

    winform的Textbox设置只读之后ForeColor无效. 通过以下方法就可以解决: 设置为只读之后,把BackColor改一下,然后运行一下窗口,再设置ForeColor就没问题了. tbT ...

  2. 极光推送设置标签和别名无效的解决办法:JPush设置别名不走成功回调

    极光推送设置标签和别名无效的解决办法 JPush设置别名不走成功回调的解决办法 http://www.cnblogs.com/chenqitao/p/5506023.html 主要是网络加载过快导致的 ...

  3. CSS设置height为100%无效的情况

    CSS设置height为100%无效的情况 笔者是小白,不是特别懂前端.今天写一个静态的HTML页面,然后想要一个div占据页面的100%,但是尝试了很多办法都没有实现,不知道什么原因. 后来取百度搜 ...

  4. (ios)ARC常用设置,部分文件编译设置ARC

    1设置 整个项目是否支持ARC 选择No 不支持 YES 支持 2 设置部分文件是否支持ARC. 支持ARC的Flags -fobjc-arc   不支持的Flags -fno-objc-arc

  5. android开发,设置listview的高度无效

    一般是在item的layout中设置高度 android:layout_height="100dp" 但是发现这样后无效,因此找到解决办法,如下: android:minHeigh ...

  6. 关于设置android:imeOptions属性无效的解决办法

    在对Android的EditText控件进行设置时,经常会限定一下输入法的属性,设置右下角为完成或者搜索等,一般都会想到android:imeOptions属性,但是仅仅这么设置通常是无效的,还要搭配 ...

  7. Xcode 新版本如何设置ARC

    在刚刚开始学习IOS开发时,最好不要开启ARC,这样有助于学习内存管理,但不少刚刚接触Xcode的朋友可能会发现,当你使用最新版本的Xcode时,敲入release等代码时会提示报错.这是因为系统默认 ...

  8. 解决设置redmineblacklog的按钮无效问题

    安装了redemin+backlog后,想要设置backlog, 先用管理员登录,然后访问网页: http://localhost/settings/plugin/redmine_backlogs 发 ...

  9. 关于 Mybatis 设置懒加载无效的问题

    看了 mybatis 的教程,讲到关于mybatis 的懒加载的设置: 只需要在 mybatis 的配置文件中设置两个属性就可以了: <settings> <!-- 打开延迟加载的开 ...

随机推荐

  1. BZOJ 1103: [POI2007]大都市meg(dfs序,树状数组)

    本来还想链剖的,结果才发现能直接树状数组的= = 记录遍历到达点与退出点的时间,然后一开始每个到达时间+1,退出时间-1,置为公路就-1,+1,询问直接点1到该点到达时间求和就行了- - CODE: ...

  2. Noip 2014酱油记+简要题解

    好吧,day2T1把d默认为1也是醉了,现在只能期待数据弱然后怒卡一等线吧QAQ Day0 第一次下午出发啊真是不错,才2小时左右就到了233,在车上把sao和fate补掉就到了= = 然后到宾馆之后 ...

  3. SimpleDateFormat的线程安全问题与解决方案

    SimpleDateFormat 是 Java 中一个常用的类,该类用来对日期字符串进行解析和格式化输出,但如果使用不小心会导致非常微妙和难以调试的问题. 因为 DateFormat 和 Simple ...

  4. angular : ng-options

    基本调用,得到name 属性 <select ng-model="target" ng-options="obj.name as obj.name for obj ...

  5. 业务逻辑 : 未完 : easybook.com

    Content>social media facebook, twitter, google+, instagram, pinterest (Question : How to update n ...

  6. 每天一个linux命令(33)--du命令

    Linux  du命令也是查看使用空间的,但是与 df  命令不同的是 Linux du 命令是对文件和目录磁盘使用的空间的查看,还是和df 命令有一些区别的. 1.命令格式: du  [选项] [文 ...

  7. 第21篇 js四种继承方式

    js是一个很自由的语言,没有强类型的语言的那种限制,实现一个功能往往有很多做法.继承就是其中的一个,在js中继承大概可以分为四大类,上面一篇文章也提及过一些,下面开始详细说说js的继承. 1.原型继承 ...

  8. loadrunner入门篇-Controller控制器

    Controller组件是LR的控制中心,主要包括场景设计和场景执行两部分.在VuGen中编辑完脚本并将脚本加载到Controller组件中,即开始对脚本运行时的场景进行设计,当场景设计完成后,即可执 ...

  9. DOM基础(二)

    在我之前写的DOM基础(一)的文章中提到过兼容性的问题,也就是在获取标签间文本信息的时候,早期的火狐版本是不支持innerText的,只支持textContent ,现在的火狐浏览器两者都支持.而IE ...

  10. Java面试10|数据库相关

    1.ID分配单点问题 系统使用一张表的自增来得到订单号,所有的订单生成必须先在这里insert一条数据,得到订单号.分库后,库的数量变多,相应的故障次数变多,但由于单点的存在,故障影响范围并未相应的减 ...