Core Foundation框架学习性介绍

在开发过程中绝大多数时间使用的是UIKit和Foundation框架,UIKit提供诸如UIView和UIButton这类的控件,Foundation提供NSArray,NSDictionary这类的数据结构,两者结合可以解决大部分问题,但是有的时候需要底层框架,底层框架名字通常以Core开头,比如Core Text,Core Graphics和Core Video.它们都是以Core Foundation为基础的C语言的API。Core Foundation框架(CoreFoundation.framework)为 iOS程序提供了基本的数据管理和服务功能。


CoreFoundation.framework

接下来我们对上图中的接口文件逐个介绍:

CFBase.h主要是一些基础的宏定义、预编译程序和常量。
CFAvailability.h辅助性宏定义。
CFAttributedString.h类似OC 对象NSAttributedString属性字符串。
更多信息请参考:CFAttributedString.h

CFBag.h相关信息请参考:CFBag.h

CFBinaryHeap.h实现容器存储值排序使用二进制搜索算法。所有二进制堆是可变的,没有一个单独的不可变的。二进制堆,这可能会有用,因为优先级队列。
更多信息请参考:CFBinaryHeap.h

CFbitVector.hCFBitVector及其派生的可变类型CFMutableBitVector,管理位运算值得有序集合。0和1其中之一。CFBitVector创建静态位向量和CFMutableBitVector创建动态位向量。
更多信息请参考:CFbitVector.h

CFBundle.hCFBundle和OC对象中NSBundle是类似的功能。
更多信息请参考:CFBundle.h

CFCharacterSet.hCFCharacterSet对象表示一组符合Unicode的字符。
更多信息请参考:CFCharacterSet.h

CFByteOrder.h字节顺序的标志。
更多信息请参考:CFByteOrder.h

CFCalendar.h日历系统库,提供关于日历API。
更多信息请参考:CFCalendar.h

CFData.hCFData类似 OC中NSData对象类型。
更多信息请参考:CFData.h

CFDate.hCFDate对象存储可以与其他日期和时间进行比较的日期和时间。
更多信息请参考:CFDate.h

CFDateFormatter.hCFDateFormatter对象格式化CFDate和CFAbsoluteTime对象的文本表示,并将日期和时间的文本表示转换为CFDate和CFAbsoluteTime对象。CFDateFormatter和 OC中NSDateFormatter对象类似。
更多信息请参考:CFDateFormatter.h

CFDictionary.hCFDictionary及其衍生可变类型,CFMutableDictionary管理键-值对协会。CFDictionary创建静态字典,您在首次创建字典时设置键值对,并且之后不能修改它们; CFMutableDictionary创建动态字典,您可以随时添加或删除键值对,字典会根据需要自动分配内存。类似 OC 中 NSDictionary类型。
更多信息请参考:CFDictionary.h

CFError.hCFError和 OC 中NSError 类型类似。
相关信息请参考:CFError.h

CFFileDescriptor.hCFFileDescriptor提供了一个隐含类型,用于通过CFRunLoop监视文件描述符的读取和写入活动。
相关信息请参考:CFFileDescriptor.h

CFLocale.hCFLocale类似OC中NSLocale类型。
相关信息请参考:CFLocale.h

CFMachPort.hCFMachPort对象是本地Mach端口的包装(mach_port_t)。Mach端口是macOS内核的本地通信通道。
更多相关信息请参考:CFMachPort.h

CFMessagePort.hCFMessagePort对象提供了一个通信通道,可以在本地机器上的多个线程或进程之间传输任意数据。
更多相关信息请参考:CFMessagePort.h

CFNotificationCenter.hCFNotificationCenter和OC中NSNotificationCenter对象功能类似。CFNotificationCenter对象提供了您可以向任何数量的收件人或观察者发送消息或通知,而无需了解收件人的任何内容的方法。
更多相关信息请参考:CFNotificationCenter.h

CFNumber.hCFNumber封装C标量(数字)类型。它提供了用于设置和访问任何基本C类型的值的功能。它还提供了一个比较函数来确定两个CFNumber对象的顺序。CFNumber对象用于包装用于Core Foundation属性列表和集合的数值。
更多相关信息请参考:CFNumber.h

CFNumberFormatter.hCFNumberFormatter对象格式化CFNumber对象的文本表示,并将数字的文本表示转换为CFNumber对象。该表示包括整数,浮点数和双精度; 浮点和双精度型可以格式化为指定的小数位。
更多相关信息请参考:CFNumberFormatter.h

CFPlugIn.hCFPlugIn提供了应用程序扩展的标准体系结构。
更多相关信息请参考:CFPlugIn.h

CFPlugInCOM.h暂时木找到相关文档。
CFPreferences.h暂时木找到相关文档。

CFPropertyList.hCFPropertyList提供了将属性列表对象转换为多种序列化格式(如XML)的功能。
更多相关信息请参考:CFPropertyList.h

CFRunLoop.hCFRunLoop类型类似OC中NSRunLoop类型。CFRunLoop对象监视任务的输入源,并在它们准备好进行处理时分派控制。输入源的示例可以包括用户输入设备,网络连接,周期性或时间延迟事件和异步回调。
更多相关信息请参考:CFRunLoop.h

CFSet.hCFSet类型类似OC中NSSet类型。CFSET及其衍生可变类型,CFMutableSet,一组的数学概念提供支持。在数学意义上和在CFSet的实现中,集合是不同元素的无序集合。CFSet创建静态集合,CFMutableSet创建动态集合。
更多相关信息请参考:CFSet.h

CFSocket.hCFSocket是用BSD套接字实现的通信通道。
对于此API的大多数用途,您需要包含三个标头:
#import <CoreFoundation/CoreFoundation.h>.
#include <sys/socket.h>.
#include <netinet/in.h>.
更多相关信息请参考:CFSocket.h

CFStream.h本文档介绍了通用的CFStream功能,数据类型和常量。又见CFReadStreamRefCFWriteStreamRef具体读取和写入分别流函数和常量。
更多信息请参考:CFStream.h

CFString.hCFString类型类似 OC中NSString类型。提供了一套高效的字符串操作和字符串转换功能。
更多信息请参考:CFString.h

CFStringEncodingExt.h类主要通过枚举提供了CFString编码扩展。

CFStringTokenizer.hCFStringTokenizer提供了对CFString的分词。
更多信息请参考:CFStringTokenizer.h

CFTimeZone.hCFTimeZone类似OC中定义NSTimeZone类型,定义时区对象的行为。
更多信息请参考:CFTimeZone.h

CFTree.h使用CFTree创建表示分层信息组织的树结构。在这样的结构中,每个树节点具有正好一个父树(除了根树之外,其没有父节点)并且可以具有多个子节点。结构中的每个CFTree对象都有一个与其相关的上下文; 此上下文包括一些程序定义的数据以及对该数据进行操作的回调。程序定义的数据通常用作确定CFTree对象在结构中适合的位置的基础。所有CFTree对象都是可变的。
更多信息请参考:CFTree.h

CFURL.hCFURL类似OC中 NSURL类型。在CFURL隐含的类型提供了用于创建,解析和取消引用URL字符串。CFURL对于需要使用URL访问资源(包括本地文件)的应用程序非常有用。
更多信息请参考:CFURL.h

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,884评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,347评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,435评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,509评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,611评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,837评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,987评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,730评论 0 267
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,194评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,525评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,664评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,334评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,944评论 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,764评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,997评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,389评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,554评论 2 349

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,066评论 4 62
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,633评论 18 139
  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 10,930评论 6 13
  • 若,知遇是一束待寒羞涩的腊梅 你的细语 便是霜冻百花的微寒 冰封千里,雪掩一路梅香 若,知交是一孔甘之如饴的山泉 ...
    李氏庭院阅读 528评论 4 24
  • 基本概念 根据设定的哈希函数Hash(key)和所选中的处理冲突的方法,将一组关键字映像到一个有限的、地址连...
    阿凡提说AI阅读 642评论 0 0