直接桥接数据类型和ARC桥接转换

直接桥接数据类型:

苹果公司为基于C语言的CoreFundation和基于OC
的Foundation框架中的很多数据类型提供了互用性。这些可互用的数据类型称为直接桥接数据类型,如NSArray和CFArrayRef、NSData和CFDataRef等。

ARC桥接转换:

ARC环境下,不允许OC对象指针和其他数据类型的指针直接转换,通过ARC桥接转换,可以使用直接桥接数据类型,但必须使用以下标记。

__bridge :用在CoreFundation对象和Fundation对象互相转换。CoreFundation对象转为Fundation对象时,依然需要手动管理内存。Fundation对象转为CoreFundation对象则由ARC管理。

__bridge__retained:用在将Fundation对象转为CoreFundation对象,Fundation对象进行手动内存管理。

__bridge_transfer:用在将CoreFundation对象转为Fundation对象,CoreFundation对象的内存由ARC自动管理。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容