简介:__bridge:实现id类型与void*类型的相互转换;
__bridge_retained:类型被转换时,其对象的所有权也将被变换后变量所持有
__bridge_transfer:类型被转换时,其对象的所有权也将被释放
__bridge_retained 是编译器替我们做了 retain 操作,而 __bridge_transfer 是替我们做了 release1。
详情:
...
分类:
移动开发 时间:
2014-12-29 12:03:55
阅读次数:
181
最近再看CoreText其中有很多地方需使用了__bridge或者CFBridgingRelease 作为菜鸟不太理解什么意思于是百度了下大体回答是这样的CFObject和NSObject转换的问题,由于ARC不能管理Core Foundation Object的生命周期,所以在Core Found...
分类:
其他好文 时间:
2014-12-23 19:24:23
阅读次数:
129
第一、__bridge_retained的使用
__bridge_retained转换可使要转换的变量也持有所赋值的对象
void *p=0;
{
id obj=[[NSObject alloc] init];
p=(__bridge_retained void*)obj;
}
NSLog(@"clas...
分类:
其他好文 时间:
2014-12-04 21:44:39
阅读次数:
153
Core Foundation 框架
Core Foundation框架 (CoreFoundation.framework) 是一组C语言接口,它们为iOS应用程序提供基本数据管理和服务功能。下面列举该框架支持进行管理的数据以及可提供的服务:
群体数据类型 (数组、集合等)
程序包
字符串管理
日期和时间管理
原始数据块管理
偏好管理
URL及数据流操作
线程和Ru...
分类:
移动开发 时间:
2014-11-07 09:56:09
阅读次数:
202
Core Foundation 框架Core Foundation框架 (CoreFoundation.framework) 是一组C语言接口,它们为iOS应用程序提供基本数据管理和服务功能。下面列举该框架支持进行管理的数据以及可提供的服务:群体数据类型 (数组、集合等)程序包字符串管理日期和时间管...
分类:
其他好文 时间:
2014-08-05 10:42:39
阅读次数:
381
最近碰到了CFObject和NSObject转换的问题,由于ARC不能管理Core Foundation Object的生命周期,所以在Core Foundation和ARC之间,我们需要使用到__bridge,__bridge_retained和__bridge_transfer三个转换关键字。根...
分类:
其他好文 时间:
2014-08-04 17:11:57
阅读次数:
179
Core Foundation 框架Core Foundation框架 (CoreFoundation.framework) 是一组C语言接口,它们为iOS应用程序提供基本数据管理和服务功能。下面列举该框架支持进行管理的数据以及可提供的服务:群体数据类型 (数组、集合等)程序包字符串管理日期和时间管...
分类:
其他好文 时间:
2014-08-02 20:40:03
阅读次数:
265
总结于 IOS Tuturial 中 ARC两章,详细在dropbox pdf 文档。Toll-Free Bridging当你在Objective-C和Core Foundation对象之间进行转换时,就需要使用Bridge cast。今天的多数应用很少需要使用Core Foundation,大多数...
分类:
其他好文 时间:
2014-07-28 13:50:50
阅读次数:
367
typedef void (^dd)(void);@property (strong) dd a ;@property (copy) dd a ;__weak id b=self; self.a=^{ NSLog(@"%@",self); };编译器都会有警告:循环引用造成的内存泄露---...
分类:
其他好文 时间:
2014-07-07 09:17:36
阅读次数:
221