在编译单位上,可以设置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. vc release模式设置断点调试

    在VC release模式做如下设置:在 工程->属性->c/c++->常规->调试信息格式选择 -> 程序数据库(/Zi) 在 工程->属性->链接器-&g ...

  2. 每天一个Linux命令(08)--cp命令

    cp命令用来复制文件或者目录,是Linux系统中最常用的命令之一.一般情况下,shell会设置一个别名,在命令行下复制文件时,如果目标文件已经存在,就会询问是否覆盖,不管你是否使用-i参数.但是如果是 ...

  3. python之数据库(mysql)操作

    前言: 最近开始学django了,学了下web框架,顿时感觉又会了好多知识.happy~~ 这篇博客整理写下数据库基本操作,内容挺少.明天写SQLAlchemy. 一.数据库基本操作 1. 想允许在数 ...

  4. apicloud中dialog使用方法

    var dialog = new auiDialog(); function openDialog(type){ switch (type) { case "text": dial ...

  5. [LintCode]快速幂(数论)

    计算a^n % b,其中a,b和n都是32位的整数. 快速幂搞就过了.快速幂首先就是要知道 (a*b)%c = ((a%c)*b)%c ,所以经过推导得出. (a^n)%b = ((((a%b)*a) ...

  6. 网络安全实验室 脚本关通关writeup

    [1]key又又找不到了查看源代码.发现key的路径,点击进行了302跳转,抓包,得到key [2]快速口算要2秒内提交答案,果断上python import requests,re s = requ ...

  7. ACM Fibonacci数 计算

    Fibonacci数 时间限制:3000 ms  |  内存限制:65535 KB 难度:1   描述 无穷数列1,1,2,3,5,8,13,21,34,55...称为Fibonacci数列,它可以递 ...

  8. enum类型的本质(转)

    原地址:http://www.cppblog.com/chemz/archive/2007/06/05/25578.html 至从C语言开始enum类型就被作为用户自定义分类有限集合常量的方法被引入到 ...

  9. Js里面的数组去重方法

    去掉数组里面重复的有很多种,我这里就说一种比较简单的吧. var arr=[23,33,44,33,44,66,44,55,44,4,44,33,23]; for(var i=0;i<arr.l ...

  10. sqlplus入门使用

    1.如果在PL/SQL 等工具里打开的话,直接修改下面的代码中[斜体加粗部分]执行 2.确保路径存在,比如[D:\oracle\oradata\Oracle9i\]也就是你要保存文件的路径存在 /*分 ...