IOS ARC项目使用非ARC文件 MRC项目使用ARC文件

iOS项目MRC转ARC的两种方法 由于公司项目过于老旧,内存还是使用mrc进行管理,导致出现不少问题,最近着手将项目由mrc转换到arc上来,本人初步想法,有两种方案实施: 一、第一种方案(一步到位) 1、过滤无需转换的文件(需要统计出不需要转换的文件及第三方做标记) 不希望转换的文件,添加-fno-objc-arc标记; 对于第三方库如果有arc版的进行替换,没有的添加-fno-objc-arc标记; ... 阅读详情

1.自己的项目使用MRC,但是引入的第三方库却是使用了ARC的。
2.自己的项目使用了ARC,但是引入的第三方库或者以前写的代码却使用MRC。

这两种情况下,直接肯定是通不过编译的。可以通过升级旧项目,让其使用ARC来解决,但这个办法有时候会很麻烦。
有一个简单的办法就是,可以指定单个文件是否采用ARC来进行编译。
方法就是在Build Phase里面的Compile Source里面找到需要特殊处理的文件,加上编译选项(Compiler Flags),具体针对上面两种情况有所区别。

Targets-->Build Phase-->Compile Source-->

1.对于第一个情况,给采用了ARC的源文件,添加-fobjc-arc选项
2.对于第二种情况,添加-fno-objc-arc

此外,xcode貌似有点问题,在点击某个源文件的Compiler Flags条目的时候,应该显示光标的地方却什么也没有提示,输入字符也没有echo,只有敲完之后,选择其它文件才能看到添加的编译选项···这真无语。。



对于新写的各种插件,可以这么干:

-(void)dealloc{ //do something in common #if !__has_feature(objc_arc) [super dealloc]; #else //nothing #endif }

让它在arc和非arc都可用。

原创_新魔百和CM201-1鸿蒙架构当贝乐家语音安卓9线刷固件包刷机教程可救砖rom刷机包 不用担心变砖,因为系统内核会自动判断分区及CPU等级,假设你CPU是高于S905L3的那么。7.adb功能支持,系统增加开机自启功能,添加老人桌面模式,默认为年轻化桌面;所以我发的这个固件可适用于_cw_ys_zg_zn代工上生产的盒子进行刷机;5.CPU及GPU算法更改,当观看4K片源时,AI智能会自动优化系统后台进程,正如我所说,本固件是采用安卓公版镜像制作而成,那么代工厂也是使用的公版镜像,1.移植鸿蒙架构代码,完美融合安卓系统,增加系统的稳定性;刷机的时候 他会自动短接链接,所以不存在变砖。 阅读详情

相关推荐

日前日内多阶段多时间尺度源荷储协调调度(matlab代码)

多阶段多时间尺度的协调调度的优势是考虑新能源出力的波 动性与随机性,需求响应负荷的不确定性会对电网制定的日前调度计划准确性造成影响,也就是能够更加精准的进行调度和分析,优化结果的可用性更强。在这方面论文里面,金力的《考虑特性分布的储能电站接入的电网多时间尺度源储荷协调调度策略》就考虑了日前日内实时三个阶段调度,每个阶段考虑了不同负荷需求响应策略,同时考虑了负荷波动性的影响,具有很强的参考意义。 目录 一、模型 二、程序运行 三、程序链接 一、模型 负荷需求响应考虑电价型和激励型两种,电.

zhangxd212489的博客 7915

iOS ARC项目使用MRC(非ARC)文件 MRC项目使用ARC文件

苹果在iOS4.0后引入了ARC,这就带给我们一些新的问题,我们会发现有很多项目会混合使用这两个方案。例如: 1.自己的旧项目使用了MRC,但是引入的第三方库却是使用了ARC的。 2.自己的新项目使用了ARC,但是引入的第三方库或者以前写的代码却使用MRC。 这两种情况下,直接肯定是通不过编译的。可以通过升级旧项目,让其使用ARC来解决,但这个办法有时候会很麻烦。 有一

皮皮的专栏 1054

51单片机定时器的原理、应用与编程实现

本文系统介绍了51单片机定时器的基本原理与应用。首先阐述了定时器的工作原理,包括定时模式和计数模式的区别。然后详细讲解了定时器的四种工作模式(方式0-方式3)及其适用场景,并分析了相关寄存器(TMOD、TCON、THx/TLx)的功能设置。文章还给出了定时器编程的具体步骤,包括初始化、计数初值计算和示例代码。最后通过LED闪烁、PWM波形产生、脉冲计数等实际应用案例,展示了定时器的多样化应用。掌握这些知识对嵌入式系统开发具有重要意义。

2501_91227323的博客 1523

iOS-ARC项目使用非ARC文件 MRC项目使用ARC文件

SDK4.0引入了ARC,到现在已经好几年了,开始发现有很多项目会混合使用这两个方案。比如: 1.自己的旧项目没有使用ARC,但是引入的第三方库却是使用了ARC的。 2.自己的新项目使用了ARC,但是引入的第三方库或者以前写的代码却没有使用ARC。 这两种情况下,直接肯定是通不过编译的。可以通过升级旧项目,让其使用ARC来解决,但这个办法有时候会很麻烦。 有一个简单的办法就是,可...

weixin_30378311的博客 114

PacketTacer烟雾传感器读数为0的解决方法

PacketTacer烟雾传感器读数为0的解决方法

ChloeMax_的博客 1903

PCB设计必看:铜皮厚度与载流能力对照表(附Excel计算工具)

本文深入解析了PCB设计中铜皮厚度与载流能力的核心关系,提供了基于IPC-2152标准的动态计算逻辑与实用Excel工具。文章不仅分享了载流对照表,更重点剖析了影响载流能力的关键因素(如铜厚、线宽、温升、布线层),并给出了高电流设计的实战技巧与测试验证方法,帮助工程师规避常见陷阱,实现从理论到实践的闭环设计。

weixin_29228781的博客 721

关于Xcode ARC与非ARC(MRC)设置

至从开始接触iOS 就是用ARC下写的。MRC很少用,但是内存管理这块还是很重要。 虽然现在我在做项目中都是用ARC下做的,但是难免部分框架或是有些第三方的代码还是用MRC,这就需要手动去设置MRC。 1、项目改为非ARC 在工程下的Build Settings  -> 搜索  Language 或是  ARC        找到Objective - C Automatic Re

i_k_o_x_s的专栏 1175

智能车图像处理0-变量释义

这篇文章主要讲述智能车图像处理中,各篇主要变量的含义。如果在看具体分析代码时感到困惑,可以在本篇文章中查询,辅助理解。

taiyuezyh的博客 3671

iOS pod库包含MRC类

在我们iOS开发过程中,碰到的大部分文件都是基于ARC内存管理的,但也免不了用到一些三方的MRC的代码,这里介绍三种方法来编写包括MRC文件的.podspec文件。

carbonzhao的专栏 1065

STM32cubemx配置驱动DHT11模块

本篇文章将带大家学习使用DHT11湿温度模块,使用这个模块可以获取当前的温度和湿度数据。DHT11可以用于智能家居,蔬菜大棚等项目当中适用范围广。DHT11 是一种数字式温湿度传感器,由杜邦公司推出。它可以测量环境中的温度和湿度,并将测量结果以数字形式传输给微控制器或其他电子设备,适用于通过数字信号读取环境温湿度的应用场景。DHT11 传感器使用单总线数据交换协议,可以通过一个 I/O 引脚进行控制和数据传输。

m0_49476241的博客 5912

12、认知地图的建模与学习

本博客系统介绍了认知地图的定义、背景及其在机器智能领域的应用,重点探讨了模糊认知地图(FCMs)的建模方法与优势。文章还对比分析了几种主流的认知地图模型(如Axelrod模型、Kosko模型等),并讨论了模型的稳定性条件及实际应用前景。通过智能制造和医疗诊断的具体案例,展示了认知地图在复杂因果推理中的强大能力,并提出了模型优化方向与未来研究展望。

plant的博客 209

ios mrc & arc 并用

如果在arc工程中倒入mrc文件就会提示出错。 解决办法如下: 在targets的build phases选项下Compile Sources下选择要使用arc编译的文件,双击它,输入-fno-objc-arc即可. ARC与非ARC在一个项目中同时使用,1,选择项目中的Targets,选中你所要操作的Target,2,选Build Phases,在其中Complie Sou...

weixin_30835923的博客 64

揭秘大厂 Unity 红点系统设计:别小看右上角那颗小红点,它能把你项目搞崩

本文详细探讨了游戏大厂如何设计高性能红点系统。红点作为提升用户活跃和转化率的重要工具,需要支持多级联动、动态判断和全局一致性。系统采用观察者模式和树形结构,分为数据管理、逻辑判定、订阅通知和UI展示四大模块,通过事件驱动方式实现高效刷新。文章特别强调了解耦设计、配置化管理和性能优化,并提出了热更新、数据分析等高级应用场景。最终指出,优秀的红点系统需要架构标准化、自动化配置和团队紧密协作,是大型游戏项目的关键技术基础。

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 377

ARC写的代码 外部非ARC环境调用时到底是否需要release

今天遇到个问题  找了挺长时间没找到问题 是这样的,同事写了个

沸腾的泪水的专栏 792

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

【iOS】MRC与ARC

摘要:Objective-C内存管理机制 Objective-C提供了MRC(手动引用计数)和ARC(自动引用计数)两种内存管理机制。MRC需要开发者手动管理对象生命周期,通过retain/release控制引用计数,易引发内存泄漏和悬挂指针问题。ARC则通过编译器自动插入内存管理代码,简化了开发流程。

2301_80467753的博客 1258

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

iOS——MRC和ARC实现原理

Objective-C提供了两种内存管理机制MRC(MannulReferenceCounting)和ARC(AutomaticReferenceCounting),为Objective-C提供了内存的手动和自动管理。下面我们来探讨一下MRC和ARC的实现。

LANGJ1的博客 2077

xcode的ARC和MRC切换

Xcode5之后,新建iOS工程,默认都是ARC模式,但是有时候我们的项目中需要用到一些第三方框架,我们下载下来却发现是非ARC的,这时候我们需要进行ARC和MRC混编 第一种方式,Edit->Refactor,转换成ARC方式 著名的iOS网络框架ASIHTTPRequest就是MRC,我们试试能不能转换成ARC 点击Check,我们发现悲剧了

vkjs8imde的博客 4272

ios arc (四)将mrc代码转成arc

因为可能手上的项目已经用MRC写了一部分,不想麻烦做转变;或者因为新项目里用ARC时遇到了奇怪的问题,从而放弃ARC退回MRC。这都是常见的问题,而在下面,将通过一个demo引导大家彻底转向ARC的世界。 Demo 例子很简单,这是一个查找歌手的应用,包含一个简单的UITableView和一个搜索框,当用户在搜索框搜索时,调用MusicBrainz的API完成名字搜索和匹配。MusicBr

学习笔记 1143

MRC和ARC

MRC和ARC是两种设计模式 1.MRC设计模式 MRC:Manul Reference Counting(手动引用计数) 需要手动管理内存,即手动添加release/retain等内存管理代码,否则,会造成内存泄露 具体的内存管理方法见文章iOS内存管理 2.ARC设计模式 ARC:Automatical Reference Counting(自动引用计数) iOS中的垃圾回收机制跟其它语言不同...

superyuan567的博客 677

MRC 和 ARC的区别

iOS 知识点1.MRC 和 ARCObjective-c中提供了两种内存管理机制 MRC(Manual Reference Counting):手动内存管理 ARC(Automatic Reference Counting):自动内存管理

jeikerxiao 4870

iOS——在ARC下引入MRC文件

在写一些工程时我们总是要引入一些第三方文件,但是这些文件有些是ARC下的有些是非ARC下的。所以我们要进行转换。 引入三方文件时首先要阅读引入的文件的.h 文件头部信息 如下面的文件:头部文件要求:Header Search Paths包含/usr/include/libxml2

zzzzhy的博客 3514

iOS ARC项目中引用MRC文件和MRC中引用ARC文件

在ARC项目中引用非ARC文件时,只需要在bulid phases里面配置一下参数-fno-objc-arc.同样ARC的文件在MRC中使用只需要配置成-fobjc-arc即可. .

soindy 2438

iOS中ARC项目使用MRC文件或MRC项目使用ARC

//    方法就是在Build Phase里面的Compile Source里面找到需要特殊处理的文件,加上编译选项(Compiler Flags),具体针对上面两种情况有所区别。 //     //    1.旧项目没有使用ARC,引入的第三方库使用了ARC的,给要添加的ARC源文件,添加-fobjc-arc选项 //    2.新项目使用了ARC,引入的第三方库没有使用AR

你有故事,我囿酒 2549

UIIAlertController的自动消失

自动消失的思路就是添加一个计时器,设置计时器的时间,让UIAlertController 通过dismiss消失 UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"提示" message:@"没有上一部了" preferredStyle:UIAlertControllerStyleAler

xiaoliu_iOS的博客 6107
上一篇: Block循环引用问题
下一篇: AFNetWorking 错误Request failed: unacceptable content-type: text/html"
xiaoliu_iOS
博客等级 码龄11年 4粉丝 45原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值