Core Foundation框架學(xué)習(xí)性介紹

在開發(fā)過程中絕大多數(shù)時(shí)間使用的是UIKit和Foundation框架鸟妙,UIKit提供諸如UIView和UIButton這類的控件荠呐,F(xiàn)oundation提供NSArray,NSDictionary這類的數(shù)據(jù)結(jié)構(gòu),兩者結(jié)合可以解決大部分問題裤唠,但是有的時(shí)候需要底層框架挤牛,底層框架名字通常以Core開頭,比如Core Text,Core Graphics和Core Video.它們都是以Core Foundation為基礎(chǔ)的C語言的API种蘸。Core Foundation框架(CoreFoundation.framework)為 iOS程序提供了基本的數(shù)據(jù)管理和服務(wù)功能墓赴。


CoreFoundation.framework

接下來我們對上圖中的接口文件逐個(gè)介紹:

CFBase.h主要是一些基礎(chǔ)的宏定義竞膳、預(yù)編譯程序和常量。
CFAvailability.h輔助性宏定義诫硕。
CFAttributedString.h類似OC 對象NSAttributedString屬性字符串坦辟。
更多信息請參考:CFAttributedString.h

CFBag.h相關(guān)信息請參考:CFBag.h

CFBinaryHeap.h實(shí)現(xiàn)容器存儲(chǔ)值排序使用二進(jìn)制搜索算法。所有二進(jìn)制堆是可變的,沒有一個(gè)單獨(dú)的不可變的章办。二進(jìn)制堆,這可能會(huì)有用,因?yàn)閮?yōu)先級隊(duì)列锉走。
更多信息請參考:CFBinaryHeap.h

CFbitVector.hCFBitVector及其派生的可變類型CFMutableBitVector,管理位運(yùn)算值得有序集合藕届。0和1其中之一挪蹭。CFBitVector創(chuàng)建靜態(tài)位向量和CFMutableBitVector創(chuàng)建動(dòng)態(tài)位向量。
更多信息請參考:CFbitVector.h

CFBundle.hCFBundle和OC對象中NSBundle是類似的功能休偶。
更多信息請參考:CFBundle.h

CFCharacterSet.hCFCharacterSet對象表示一組符合Unicode的字符嚣潜。
更多信息請參考:CFCharacterSet.h

CFByteOrder.h字節(jié)順序的標(biāo)志。
更多信息請參考:CFByteOrder.h

CFCalendar.h日歷系統(tǒng)庫椅贱,提供關(guān)于日歷API。
更多信息請參考:CFCalendar.h

CFData.hCFData類似 OC中NSData對象類型只冻。
更多信息請參考:CFData.h

CFDate.hCFDate對象存儲(chǔ)可以與其他日期和時(shí)間進(jìn)行比較的日期和時(shí)間庇麦。
更多信息請參考:CFDate.h

CFDateFormatter.hCFDateFormatter對象格式化CFDate和CFAbsoluteTime對象的文本表示,并將日期和時(shí)間的文本表示轉(zhuǎn)換為CFDate和CFAbsoluteTime對象喜德。CFDateFormatter和 OC中NSDateFormatter對象類似山橄。
更多信息請參考:CFDateFormatter.h

CFDictionary.hCFDictionary及其衍生可變類型,CFMutableDictionary管理鍵-值對協(xié)會(huì)。CFDictionary創(chuàng)建靜態(tài)字典舍悯,您在首次創(chuàng)建字典時(shí)設(shè)置鍵值對航棱,并且之后不能修改它們; CFMutableDictionary創(chuàng)建動(dòng)態(tài)字典,您可以隨時(shí)添加或刪除鍵值對萌衬,字典會(huì)根據(jù)需要自動(dòng)分配內(nèi)存饮醇。類似 OC 中 NSDictionary類型。
更多信息請參考:CFDictionary.h

CFError.hCFError和 OC 中NSError 類型類似秕豫。
相關(guān)信息請參考:CFError.h

CFFileDescriptor.hCFFileDescriptor提供了一個(gè)隱含類型朴艰,用于通過CFRunLoop監(jiān)視文件描述符的讀取和寫入活動(dòng)。
相關(guān)信息請參考:CFFileDescriptor.h

CFLocale.hCFLocale類似OC中NSLocale類型混移。
相關(guān)信息請參考:CFLocale.h

CFMachPort.hCFMachPort對象是本地Mach端口的包裝(mach_port_t)祠墅。Mach端口是macOS內(nèi)核的本地通信通道。
更多相關(guān)信息請參考:CFMachPort.h

CFMessagePort.hCFMessagePort對象提供了一個(gè)通信通道歌径,可以在本地機(jī)器上的多個(gè)線程或進(jìn)程之間傳輸任意數(shù)據(jù)毁嗦。
更多相關(guān)信息請參考:CFMessagePort.h

CFNotificationCenter.hCFNotificationCenter和OC中NSNotificationCenter對象功能類似。CFNotificationCenter對象提供了您可以向任何數(shù)量的收件人或觀察者發(fā)送消息或通知回铛,而無需了解收件人的任何內(nèi)容的方法狗准。
更多相關(guān)信息請參考:CFNotificationCenter.h

CFNumber.hCFNumber封裝C標(biāo)量(數(shù)字)類型克锣。它提供了用于設(shè)置和訪問任何基本C類型的值的功能。它還提供了一個(gè)比較函數(shù)來確定兩個(gè)CFNumber對象的順序驶俊。CFNumber對象用于包裝用于Core Foundation屬性列表和集合的數(shù)值娶耍。
更多相關(guān)信息請參考:CFNumber.h

CFNumberFormatter.hCFNumberFormatter對象格式化CFNumber對象的文本表示,并將數(shù)字的文本表示轉(zhuǎn)換為CFNumber對象饼酿。該表示包括整數(shù)榕酒,浮點(diǎn)數(shù)和雙精度; 浮點(diǎn)和雙精度型可以格式化為指定的小數(shù)位。
更多相關(guān)信息請參考:CFNumberFormatter.h

CFPlugIn.hCFPlugIn提供了應(yīng)用程序擴(kuò)展的標(biāo)準(zhǔn)體系結(jié)構(gòu)故俐。
更多相關(guān)信息請參考:CFPlugIn.h

CFPlugInCOM.h暫時(shí)木找到相關(guān)文檔想鹰。
CFPreferences.h暫時(shí)木找到相關(guān)文檔。

CFPropertyList.hCFPropertyList提供了將屬性列表對象轉(zhuǎn)換為多種序列化格式(如XML)的功能药版。
更多相關(guān)信息請參考:CFPropertyList.h

CFRunLoop.hCFRunLoop類型類似OC中NSRunLoop類型辑舷。CFRunLoop對象監(jiān)視任務(wù)的輸入源,并在它們準(zhǔn)備好進(jìn)行處理時(shí)分派控制槽片。輸入源的示例可以包括用戶輸入設(shè)備何缓,網(wǎng)絡(luò)連接,周期性或時(shí)間延遲事件和異步回調(diào)还栓。
更多相關(guān)信息請參考:CFRunLoop.h

CFSet.hCFSet類型類似OC中NSSet類型碌廓。CFSET及其衍生可變類型,CFMutableSet剩盒,一組的數(shù)學(xué)概念提供支持谷婆。在數(shù)學(xué)意義上和在CFSet的實(shí)現(xiàn)中,集合是不同元素的無序集合辽聊。CFSet創(chuàng)建靜態(tài)集合纪挎,CFMutableSet創(chuàng)建動(dòng)態(tài)集合。
更多相關(guān)信息請參考:CFSet.h

CFSocket.hCFSocket是用BSD套接字實(shí)現(xiàn)的通信通道跟匆。
對于此API的大多數(shù)用途异袄,您需要包含三個(gè)標(biāo)頭:
#import <CoreFoundation/CoreFoundation.h>.
#include <sys/socket.h>.
#include <netinet/in.h>.
更多相關(guān)信息請參考:CFSocket.h

CFStream.h本文檔介紹了通用的CFStream功能,數(shù)據(jù)類型和常量贾铝。又見CFReadStreamRefCFWriteStreamRef具體讀取和寫入分別流函數(shù)和常量隙轻。
更多信息請參考:CFStream.h

CFString.hCFString類型類似 OC中NSString類型。提供了一套高效的字符串操作和字符串轉(zhuǎn)換功能垢揩。
更多信息請參考:CFString.h

CFStringEncodingExt.h類主要通過枚舉提供了CFString編碼擴(kuò)展玖绿。

CFStringTokenizer.hCFStringTokenizer提供了對CFString的分詞。
更多信息請參考:CFStringTokenizer.h

CFTimeZone.hCFTimeZone類似OC中定義NSTimeZone類型叁巨,定義時(shí)區(qū)對象的行為斑匪。
更多信息請參考:CFTimeZone.h

CFTree.h使用CFTree創(chuàng)建表示分層信息組織的樹結(jié)構(gòu)。在這樣的結(jié)構(gòu)中,每個(gè)樹節(jié)點(diǎn)具有正好一個(gè)父樹(除了根樹之外蚀瘸,其沒有父節(jié)點(diǎn))并且可以具有多個(gè)子節(jié)點(diǎn)狡蝶。結(jié)構(gòu)中的每個(gè)CFTree對象都有一個(gè)與其相關(guān)的上下文; 此上下文包括一些程序定義的數(shù)據(jù)以及對該數(shù)據(jù)進(jìn)行操作的回調(diào)。程序定義的數(shù)據(jù)通常用作確定CFTree對象在結(jié)構(gòu)中適合的位置的基礎(chǔ)贮勃。所有CFTree對象都是可變的贪惹。
更多信息請參考:CFTree.h

CFURL.hCFURL類似OC中 NSURL類型。在CFURL隱含的類型提供了用于創(chuàng)建寂嘉,解析和取消引用URL字符串奏瞬。CFURL對于需要使用URL訪問資源(包括本地文件)的應(yīng)用程序非常有用。
更多信息請參考:CFURL.h

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末泉孩,一起剝皮案震驚了整個(gè)濱河市硼端,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌寓搬,老刑警劉巖珍昨,帶你破解...
    沈念sama閱讀 212,718評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異句喷,居然都是意外死亡镣典,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,683評論 3 385
  • 文/潘曉璐 我一進(jìn)店門唾琼,熙熙樓的掌柜王于貴愁眉苦臉地迎上來骆撇,“玉大人,你說我怎么就攤上這事父叙。” “怎么了肴裙?”我有些...
    開封第一講書人閱讀 158,207評論 0 348
  • 文/不壞的土叔 我叫張陵趾唱,是天一觀的道長。 經(jīng)常有香客問我蜻懦,道長甜癞,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,755評論 1 284
  • 正文 為了忘掉前任宛乃,我火速辦了婚禮悠咱,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘征炼。我一直安慰自己析既,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,862評論 6 386
  • 文/花漫 我一把揭開白布谆奥。 她就那樣靜靜地躺著眼坏,像睡著了一般。 火紅的嫁衣襯著肌膚如雪酸些。 梳的紋絲不亂的頭發(fā)上宰译,一...
    開封第一講書人閱讀 50,050評論 1 291
  • 那天檐蚜,我揣著相機(jī)與錄音,去河邊找鬼沿侈。 笑死闯第,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的缀拭。 我是一名探鬼主播咳短,決...
    沈念sama閱讀 39,136評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼智厌!你這毒婦竟也來了诲泌?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,882評論 0 268
  • 序言:老撾萬榮一對情侶失蹤铣鹏,失蹤者是張志新(化名)和其女友劉穎敷扫,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體诚卸,經(jīng)...
    沈念sama閱讀 44,330評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡葵第,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,651評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了合溺。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片卒密。...
    茶點(diǎn)故事閱讀 38,789評論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖棠赛,靈堂內(nèi)的尸體忽然破棺而出哮奇,到底是詐尸還是另有隱情,我是刑警寧澤睛约,帶...
    沈念sama閱讀 34,477評論 4 333
  • 正文 年R本政府宣布鼎俘,位于F島的核電站,受9級特大地震影響辩涝,放射性物質(zhì)發(fā)生泄漏贸伐。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,135評論 3 317
  • 文/蒙蒙 一怔揩、第九天 我趴在偏房一處隱蔽的房頂上張望捉邢。 院中可真熱鬧,春花似錦商膊、人聲如沸伏伐。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,864評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽秘案。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間阱高,已是汗流浹背赚导。 一陣腳步聲響...
    開封第一講書人閱讀 32,099評論 1 267
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留赤惊,地道東北人吼旧。 一個(gè)月前我還...
    沈念sama閱讀 46,598評論 2 362
  • 正文 我出身青樓,卻偏偏與公主長得像未舟,于是被迫代替她去往敵國和親圈暗。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,697評論 2 351

推薦閱讀更多精彩內(nèi)容

  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫裕膀、插件员串、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 12,066評論 4 62
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理毡惜,服務(wù)發(fā)現(xiàn)铺敌,斷路器杏死,智...
    卡卡羅2017閱讀 134,638評論 18 139
  • 國家電網(wǎng)公司企業(yè)標(biāo)準(zhǔn)(Q/GDW)- 面向?qū)ο蟮挠秒娦畔?shù)據(jù)交換協(xié)議 - 報(bào)批稿:20170802 前言: 排版 ...
    庭說閱讀 10,934評論 6 13
  • 若肄扎,知遇是一束待寒羞澀的臘梅 你的細(xì)語 便是霜凍百花的微寒 冰封千里,雪掩一路梅香 若导狡,知交是一孔甘之如飴的山泉 ...
    李氏庭院閱讀 529評論 4 24
  • 基本概念 根據(jù)設(shè)定的哈希函數(shù)Hash(key)和所選中的處理沖突的方法舀透,將一組關(guān)鍵字映像到一個(gè)有限的轧飞、地址連...
    阿凡提說AI閱讀 643評論 0 0