CoreFoundation和一般指针

时间:2017-08-22 00:56:17

标签: objective-c c macos pointers core-foundation

简单的问题。我似乎得到的印象是CoreFoundation并非真正用于处理,例如,指向结构的指针(包含CF对象)。 CFArrayAppendValue会将任何指针值追加,但如果我尝试CFShow,我会得到段错误。

我还注意到裸指针没有CFTypeID,但你可能会说你可以通过其他CF类型的耗尽来检测裸指针,但这很痛苦。 / p>

我的印象是否正确?我是否应尽可能使用CF类型并避免将CF与非CF物混合?

如果我想使用结构,我应该使用类似CFDictionary的内容吗?

1 个答案:

答案 0 :(得分:0)

我不相信CoreFoundation容器可用于存储除CoreFoundation对象之外的任何内容。常规C结构之间的任何桥接都可能通过CFData对象和包装器方法完成(另请参阅http://www.cocoabuilder.com/archive/cocoa/22246-implementing-new-corefoundation-types.html)。