《从零開始学Swift》学习笔记(Day60)——Core Foundation框架

Posted mfmdaoyou

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《从零開始学Swift》学习笔记(Day60)——Core Foundation框架相关的知识,希望对你有一定的参考价值。

创文章,欢迎转载。转载请注明:关东升的博客  

Core Foundation框架是苹果公司提供一套概念来源于Foundation框架,编程接口面向C语言风格的API。尽管在Swift中调用这样的C语言风格的API比較麻烦,可是在OS Xios开发过程中,有时候使用CoreFoundation框架的API是很方便的,比如在与C语言混合编码的时候。

Core Foundation框架与Foundation框架紧密相关,他们具有与同样的接口,可是不同。Core Foundation框架是基于C语言风格的,而Foundation框架是基于Objective-C语言风格的。

OS XiOS程序代码中常常会有多种语言风格的代码混合在一起的情况。这使得我们开发变得更加麻烦。

 

数据类型映射

Core Foundation框架提供了一些不透明的数据类型。这些数据类型封装了一些数据和操作。他们也能够称为“类”,他们都继承于CFType类,CFType是所用Core Foundation框架类型的根类。这些数据类型在Foundation框架中都有相应的数据类型与之相应,这些数据类型也有一些与Swift原生数据类型有相应关系。

技术分享


看看Swift原生类型Core Foundation类型之间的转换演示样例:

import CoreFoundation

import Foundation

 

var cfstr1: CFString = "Hello,World"     //创建CFString字符串

 

var str: String = cfstr1 as String           //将CFString字符串转换为Swift原生字符串String

 

var cfstr2: CFString = str                   //将Swift原生字符串String转换为CFString字符串

这个转换过程中Core Foundation类型转换为Swift原生类型是须要强制类型转换的。

 

 

 

欢迎关注关东升新浪微博@tony_关东升。


关注智捷课堂微信公共平台,了解最新技术文章、图书、教程信息
 
?技术分享
很多其它精品iOSCocos、移动设计课程请关注智捷课堂官方站点:http://www.zhijieketang.com
智捷课堂论坛站点:http://51work6.com/forum.php

 

 

以上是关于《从零開始学Swift》学习笔记(Day60)——Core Foundation框架的主要内容,如果未能解决你的问题,请参考以下文章

《从零開始学Swift》学习笔记(Day48)——类型检查与转换

《从零開始学Swift》学习笔记(Day 52)——Cocoa错误处理模式

《从零開始学Swift》学习笔记(Day 55)——使用try?和try!差别

《从零開始学Swift》学习笔记(Day 65)——Cocoa Touch设计模式及应用之选择器

《从零開始学Swift》学习笔记(Day5)——我所知道的标识符和keyword

《从零開始学Swift》学习笔记(Day 57)——Swift编码规范之凝视规范:文件凝视文档凝视代码凝视使用地标凝视