ARC准则

强指针:默认情况下,任何指针都是强指针

弱指针:使用__weak修饰的指针

ARC准则:只要没有强指针指向对象,那么这个对象就会被销毁

普通对象用strong(人在狗在)对象在对象的属性对象就在

循环引用:两个对象循环引用随便一个对象使用弱指针(weak),另一个对象使用强指针(strong)

代理和UI控件使用(weak)

UI控件也可以使用强指针(strong)

@property

*weak(assign):代理\UI控件

*strong(retain):其他对象(除代理\UI控件\字符串以外的对象)

*copy:字符串

*assign:非对象类型(基本数据类型int\float\BOOL\枚举\结构体)

时间: 2024-11-08 09:59:55

ARC准则的相关文章

黑马程序员---OC基础7【ARC概念】【ARC对象内存管理】【分类Category】

------- iOS培训.Android培训.Java培训.期待与您交流! ---------- [ARC概念]   1.指针的分类 1)强指针,默认的情况下,所有的指针都是强指针,关键字strong: 2)弱指针,_ _weak关键字修饰符的指针 2.ARC概念 自动引用计数 永远不要写retain和release.autorelease三个关键字 编译器会在编译的时候自动插入retain和release.autorelease, 是一个编译器的特性:“垃圾回收”是运行时的特性 3.ARC工

[iOS基础控件 - 6.12.3] @property属性 strong weak copy

A.概念 @property 的修饰词 strong: 强指针/强引用(iOS6及之前是retain) weak: 弱智真/弱引用(iOS6及之前是assign) 默认情况所有指针都是强指针 使用 "__weak" 修饰的指针是弱指针 ARC准则:只要没有强指针指向,对象就会被销毁 @property属性的用法 * weak(assign) :  代理\UI控件* strong(retain) : 其他对象(除代理\UI控件\字符串以外的对象)* copy : 字符串 * assign

ARC

ARC是什么 ARC是iOS 5推出的新功能,全称叫 ARC(Automatic Reference Counting).简单地说,就是代码中自动加入了retain/release,原先需要手动添加的用来处理内存管理的引用计数的代码可以自动地由编译器完成了. 该机能在 iOS 5/ Mac OS X 10.7 开始导入,利用 Xcode4.2 可以使用该机能.简单地理解ARC,就是通过指定的语法,让编译器(LLVM 3.0)在编译代码时,自动生成实例的引用计数管理部分代码.有一点,ARC并不是G

MRC与ARC混合开发配置

iOS4.1后,默认为ARC模式,ARC实质上通过编译器特性实现的,只需简单修改下文件配置即可实现. 1.要切换至MRC需要选中当前Project,选择Build Settings,查询框内键入auto,查找到Objective-C Automatic Reference Counting ,将YES选成NO即可.见下图: 2.还可以灵活选择单一或几个文件设置成ARC模式,方法是选择targets,找到Compile Sources,选择所需文件,将flags ,键入-fobjc-arc即可.见

黑马程序员--ARC

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- ARC的判断准则:只要没有强指针指向的对象,就会释放对象 ARC特点: 1>不允许调用release,release,retainCount 2>允许重写dealloc,但是不允许调用[super dealloc] 3>@property的参数 * strong :成员变量时强指针,(适用于OC对象类型) * weak :  成员变量是若指针,(适用于OC对象) * assign: 适

Objective-C(十六、内存管理,自动释放池,ARC,强指针,弱指针,方法族)——iOS开发基础

结合之前的学习笔记以及参考<Objective-C编程全解(第三版)>,对Objective-C知识点进行梳理总结.知识点一直在变,只是作为参考,以苹果官方文档为准~ 十六.内存管理相关知识(二) 1.autorelease,自动释放机制 - (instancetype)autorelease; (1)自动释放池的创建 iOS5.0之前 NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; //进行一系列操作 //此处不可以使用

iOS应用开发:什么是ARC?

ARC是iOS 5推出的新功能,全称叫 ARC(Automatic Reference Counting).简单地说,就是代码中自动加入了retain/release,原先需要手动添加的用来处理内存管理的引用计数的代码可以自动地由编译器完成了. ARC是什么 变化点 使用ARC的好处 不好的地方 ARC基本规则 Objective-C对象 引用关键字 总结 新年伊始,万象更新.新一年开始,我们来更加深入了解一下iPhone开发的内部.作为开始,我们先来了解一下ARC. ARC是什么 ARC是iO

黑马程序员[email&#160;protected]和ARC

@property和ARC @property和ARC都是编译器特性,系统会帮我们自动生成代码 property参数 1.set方法内存管理相关的参数 retain : release旧值,retain新值(适用于OC对象类型) assign : 直接赋值(默认,适用于非OC对象类型) copy   : release旧值,copy新值 2.是否要生成set方法 readwrite : 同时生成setter和getter的声明.实现(默认) readonly  : 只会生成getter的声明.实

ios新特征 ARC详解

IOS ARC 分类: IOS ARC2013-01-17 09:16 2069人阅读 评论(0) 收藏 举报 目录(?)[+] 关闭工程的ARC(Automatic Reference Counting) 顺带附上ARC教程 本文部分实例取自iOS 5 Toturail一书中关于ARC的教程和公开内容,仅用于技术交流和讨论.请不要将本文的部分或全部内容用于商用,谢谢合作. 欢迎转载本文,但是转载请注明本文出处:http://www.onevcat.com/2012/06/arc-hand-by