作为iPhone开发和Objective-C的新手,在过去的几周里,我遇到了许多关于CF和NS框架之间的“免费桥梁”的提及。
一个特别的例子是CFStream和NSStream。
是否存在记录所有这些桥以及如何使用它们的资源?它就像从一种类型的对象转换到另一种类型的对象一样简单吗?
我问,因为目前我正在使用iPhone开发工具包中严格不允许的NSStream调用,并且我知道我应该使用CFStream调用。
编辑:一篇关于how TFB works的有用文章
发布于 2009-04-30 09:45:07
免费桥接意味着数据结构是可互换的。这就像选角一样简单--这是“免费”的部分。在任何你可以在桥的一边使用文字的地方,你都可以使用另一边。因此,例如,您可以创建一个CFString,然后向其发送NSString消息,或者您可以创建一个NSArray并将数组传递给CFArray函数。
苹果在其网站上保留了一部list of the supported toll-free bridged types。
发布于 2009-04-30 11:18:27
免费桥接,尽管这是一个有趣的名字,但却是CoreFoundation类的一个非常酷的特性。本质上,它归结为这样一个事实,即您可以在同名的CoreFoundation和NextStep类之间进行转换(CFString,CFData<->NSData,CFDictionary<->NSDictionary...仅列出一些最常用的。)
|K<
https://stackoverflow.com/questions/806115
复制相似问题