ARC
文章平均质量分 90
hufeng825
hufeng825@msn.cn
展开
-
ARC 教程一: ARC是什么转自易飞扬
1一/121 ARC是什么新年伊始,万象更新。新一年开始,我们来更加深入了解一下iPhone开发的内部。作为开始,我们先来了解一下ARC。ARC是什么ARC是iOS 5推出的新功能,全称叫 ARC(Automatic Reference Counting)。简单地说,就是代码中自动加入了retain/release,原先需要手动添加的用来处理内存管理的引原创 2013-01-27 23:17:16 · 1299 阅读 · 0 评论 -
(3) — ARC之前世今生 转自易飞扬
前两节我们对 ARC(Automatic Reference Counting) 有了一个基本的理解,但是 ARC 是怎么产生的,为什么苹果要在其最新的 iOS/Mac OS X 上导入该框架? 如果不理解其背后的基本原理,只是死记硬背那些规则/方法,是毫无意义的。就像我们从小接受的填鸭式教育,基本上到后来都还给老师了。本节,我们先来看看 ARC 产生之前的 Objective-C 内存管原创 2013-01-27 23:58:47 · 863 阅读 · 0 评论 -
(2)ARC之@property使用 转自易飞扬 内容有改动
上一回我们学到了一些ARC的基本概念,这一次我们来看看ARC对@property的使用规则有何影响。首先说下__ 和不带__ 的区别吧strong,weak 等用来修饰属性。__weak, __strong 等是用来修饰变量的。例如@interface SomeObject : NSObject { __weak id SomeObject原创 2013-01-27 23:43:37 · 843 阅读 · 0 评论 -
(4) — ARC之循环参照 转自易飞扬
概念当我们使用强参照(Strong reference)时,往往需要留意 循环参照 的问题。循环参照指的是两个对象被互相强参照,以至于任一对象都不能释放。一般情况下,当对象之间有“父子关系”时,强参照的情况发生的比较多。比如通讯薄对象AddrBook和每个通讯录Entry的关系如下。这种情况下,由于Entry对象被AddrBook强参照,所以不能释放。另一方面,原创 2013-01-28 00:11:57 · 904 阅读 · 0 评论 -
(6) — ARC之对象转型 转自易飞扬
自 Xcode4.2 开始导入ARC机制后,为了支持对象间的转型,Apple又增加了许多转型用的关键字。这一讲我们就来了解其用法,以及产生的理由。引子我们先来看一下ARC无效的时候,我们写id类型转void*类型的写法:id obj = [[NSObject alloc] init];void *p = obj;反过来,当把void*对象变回id类型时,只原创 2013-01-28 00:25:06 · 929 阅读 · 0 评论 -
(7) — ARC总结 转自易飞扬 内容有改动
通过前面几篇文章的介绍,我想大家应该对ARC有了一个比较完整的理解。最后,我们来对ARC做一个总结,并把一些未涉及到的细节部分再深入讨论一下。内存管理基本原则内存管理的依循下面的基本原则自己生成的对象,那么既是其持有者不是自己生成的对象,也可成为其持有者(一个对象可以被多个人持有)如果不想持有对象的时候,必须释放其所有权不能释放已不再持有所有权的对象原创 2013-01-28 00:37:05 · 985 阅读 · 0 评论 -
ARC 入门已经使用
本文部分实例取自iOS 5 Toturail一书中关于ARC的教程和公开内容,仅用于技术交流和讨论。请不要将本文的部分或全部内容用于商用,谢谢合作。欢迎转载本文,但是转载请注明本文出处:http://www.onevcat.com/2012/06/arc-hand-by-hand/本文适合人群:对iOS开发有一定基础,熟悉iOS开发中内存管理的Reference Counting机转载 2012-09-19 16:18:00 · 1677 阅读 · 1 评论 -
(5) — ARC之Outlet与弱引用 转自易飞扬
使用weak property声明Outlet当我们使用 Interface Builder 生成Outlet对象的时候,一般都是作为 subview 来使用的。比如 UIViewController 的view。所以说Outlet的持有者就是superview对象,即有“父子”关系。由上一回 iPhone开发之深入浅出 (4) — ARC之循环参照 我们知道,当对象间有“父子”关系时原创 2013-01-28 00:17:43 · 1502 阅读 · 0 评论