ARC MRC混编

转载 2015年11月21日 17:55:44

重点:

添加MRC标记(-fno-objc-arc)

添加ARC标记(-fobjc-arc)

第一种方式,Edit->Refactor,转换成ARC方式

著名的iOS网络框架ASIHTTPRequest就是MRC,我们试试能不能转换成ARC

点击Check,我们发现悲剧了

多数情况下这种方式都会出错,那该怎么办呢?

第二种方式,给编译器加标记

可以在Build Phases中的Compile Sources中加入编译标记-fno-objc-arc,确实可行,但是文件好多,这种方式适合文件比较少的情况,文件多了难道我们要一个一个加嘛,这时候我们可以借助一个工具xproj,这是一个脚本,可以很方便的给某个文件夹内的文件添加编译标记,具体使用方法我们看项目主页就行了,既可以给ARC项目添加MRC标记(-fno-objc-arc),也可以给MRC项目添加ARC标记(-fobjc-arc)

第三种方式,打包成静态库

将我们将要使用的类拖入工程当中

勾选正确的target

将原来的类文件删除,只留我们需要的,然后我们将整个项目变为MRC

添加头文件

设置公共头文件

运行程序,我们发现静态库已经产生

这种方式的缺点就是如果需要改源码,就需要重新打包

最后一种方式,项目引用

新建一个项目,改为非ARC,在另一个项目中引用这个项目

我们需要把项目B中的无关文件删除掉

最后一种方式,自己重写成ARC方式


相关文章推荐

iOS开发之ARC MRC混编

Xcode5之后,新建iOS工程,默认都是ARC模式,但是有时候我们的项目中需要用到一些第三方框架或者接手一个旧项目,我们拿过来来却发现是非ARC的,这时候我们需要进行ARC和MRC混编。

ios ARC&MRC混编

ARC(Automatic Reference Counting) MRC(Mannul Reference Counting)苹果在iOS5中提出了ARC(Automatic Reference ...

关于ARC的介绍和ARC与MRC混编解决

1. ARC & MRC 混合开发 在项目开发中,遇到使用MRC开发的第三方库怎么办? 例如:ASI 1> 尝试使用Xcode的转换工具(失败率比较高) 2> 在编译选项中,为...

如何在ARC代码中混编非ARC代码

“ios中如果arc和非arc文件混编,可以在build parses中指定compile flags,如果arc文件设为"-fobjc-arc",非arc文件设为"-fno-objc-arc"” ...

ARC,MRC理解

1/*     oc里面有三种  ARC MRC gc    java里面有垃圾回收机制  1. 人工引用计数-MRC(MannulReference Counting)  2. 自动引用计数...

IOS内存管理,ARC,MRC,自动释放池(基础)

在IOS中内存管理几乎是每个人必须知道的一个知识点。首先我们总结一下MRC,再通过MRC来认识ARC以及自动释放池 1.MRC 1.1 淘汰的技术 1.2 引用计数(RC)是指alloc自动分配...

【Bugly干货分享】iOS内存管理:从MRC到ARC实践

Bugly 技术干货系列内容主要涉及移动开发方向,是由 Bugly 邀请腾讯内部各位技术大咖,通过日常工作经验的总结以及感悟撰写而成,内容均属原创,转载请标明出处。对于iOS程序员来说,内存管理是入门...

AFNetworking    在MRC下使用AF第三方网络请求数据     加  -fobjc-arc

#import "AFNetworking.h"- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setu...

内存管理arc,mrc

1.arc 和 mrc 1.为什么要进行内存管理  mrc  手动管理内存机制 1.使用alloc开辟内存空间 2.只有在堆区的需要管理 3.采用引用计数机制...

iOS学习笔记01——在工程中实现ARC和MRC混合编译

接触iOS差不多有一年的时间了,从大四开学后开始自学起步,这一路走过来,都是看着前辈们的博客和苹果官方的开发者文档(虽然我的英文水平一般)。今年(2013)7月份正式从学校毕业了,到现在差不两个月的试...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)