【IOS】ARC体验感受记录
2014-05-25 14:46
302 查看
本文固定链接:http://www.verydemo.com/demo_c134_i43204.html
1、不需要写retainreleaseautorelease
2、某对象只要被strong指针指向则不会被销毁,直到所有指向它的strong指针都指向别的地方;
3、默认情况下,所有实例变量和局部变量都是strong类型的;
4、weak类型的指针不持有对象,当所指对象失去所有指向它的strong指针时,该对象被销毁,同时该weak指针自动指向nil;
6、记住:
变更如下:
11、使用@autoreleasepool{}块代替NSAutoreleasePool;
12、属性命名不以new开发;
13、不使用NSAllocateObject和NSDeallocateObject
14、
__bridge
简单赋值,不会影响两边对象的retain count.
__bridge_transfer
赋值后释放右边的对象
__bridge_retained
赋值后也保留不释放右边的对象
15、IBOutlet最好都是weak型;
16、只要调用命名为Create, Copy, Retain的Core Foundation函数,你都需要使用 CFBridgingRelease() 安全地将值传递给ARC;
17、ARC Block, 避免捕获self,推荐采用如下代码模式:
18、ARC单例
<pre …………………………………………………………………………
1、不需要写retainreleaseautorelease
2、某对象只要被strong指针指向则不会被销毁,直到所有指向它的strong指针都指向别的地方;
3、默认情况下,所有实例变量和局部变量都是strong类型的;
4、weak类型的指针不持有对象,当所指对象失去所有指向它的strong指针时,该对象被销毁,同时该weak指针自动指向nil;
6、记住:
OSStatus status = SecItemCopyMatching((CFDictionaryRef) attributeQuery, (CFTypeRef *) &attributeResult);
变更如下:
CFTypeRef attri = (__bridge CFTypeRef)attributeResult; OSStatus status = SecItemCopyMatching((__bridge CFDictionaryRef)attributeQuery, &attri);10、dealloc只是处理一些必要处理的事情,如中止一个还没有完成的网络请求、删除注册的代理或通知.不需要release和[super dealloc];
11、使用@autoreleasepool{}块代替NSAutoreleasePool;
12、属性命名不以new开发;
13、不使用NSAllocateObject和NSDeallocateObject
14、
__bridge
简单赋值,不会影响两边对象的retain count.
__bridge_transfer
赋值后释放右边的对象
__bridge_retained
赋值后也保留不释放右边的对象
15、IBOutlet最好都是weak型;
16、只要调用命名为Create, Copy, Retain的Core Foundation函数,你都需要使用 CFBridgingRelease() 安全地将值传递给ARC;
17、ARC Block, 避免捕获self,推荐采用如下代码模式:
__weak id weakSelf = self; block = ^() { id strongSelf = weakSelf; if (strongSelf != nil) { // do stuff with strongSelf } }
18、ARC单例
<pre …………………………………………………………………………
相关文章推荐
- IOS学习 非ARC工程转ARC工程以及其内部对应(比较详细的记录的主要问题)
- AMT实习首日,体验颇多,感觉不错,Great!在AMT每天的工作和学习日志,今天开始都将记录在此,oyeah~
- RFC34 关于ARC时钟的一些初步记录摘要
- 感受 KDE4.1 带来用户体验的惊喜!!!
- MonoDevelop/MonoTouch SDK开发iOS程序体验!
- 改进UCHOME的记录发布,增强可访问性用户体验
- GDI+ 学习记录(13) 弧线 - Arc
- Chrome发布了,感受新体验
- 天朝GDC 2009归来(一):记录体验
- 我的赫章论坛。。。建站体验和感受
- 亲手编译uClinux的体验全记录
- GDI+ 学习记录(13): 弧线 - Arc
- 第一次留字,希望把自己的学习和感受记录下来
- 感受 KDE4.1 带来用户体验的惊喜!!!
- 今天装了Redhat Enterprise Linux 5.0 ,体验一下不同的感受.
- 体验ubuntu,感受开源的颜色。
- 体验一:感受“服从,没有任何接口”
- Ajax.net 使用初体验的感受和记录
- netbeans6.5体验感受
- 改进UCHOME的记录发布,增强可访问性用户体验