版本记录
版本号 | 时间 |
---|---|
V1.0 | 2018.02.01 |
前言
Object References - 对象引用
您可以通过引用来引用Core Foundation对象(不透明类型)。 在不透明类型的每个头文件中,您会注意到一行或两行类似于以下内容:
typedef const struct __CFArray * CFArrayRef;
typedef struct __CFArray * CFMutableArrayRef;
诸如这些的声明是指向定义不透明类型的(私有)结构的不可变和可变版本的指针引用。 许多Core Foundation函数的参数和返回值都采用这些对象引用的类型,而不是私有结构的typedef
。 例如:
CFStringRef CFStringCreateByCombiningStrings(CFAllocatorRef alloc, CFArrayRef array, CFStringRef separatorString);
每个Core Foundation不透明类型为其对象定义唯一的类型ID,如上面CFArray
对象的CFArrayRef
所示。 类型ID是CFTypeID
类型的整数,用于标识Core Foundation对象所属的不透明类型。您可以在各种上下文中使用类型ID,例如在异构集合上操作时。 Core Foundation提供编程接口来获取和评估类型ID。
重要提示:因为类型ID的值可能会随发行版本而变化,所以您的代码不应该依赖于存储或硬编码的类型ID,也不应该对类型ID的任何观察属性进行硬编码(例如, 是一个小整数)。
后记
本篇已结束,后面更精彩~~~