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

《从零开始学Swift》学习笔记(Day60)――Core Foundation框架,第1张

概述原创文章,欢迎转载。转载请注明:关东升的博客  Core Foundation框架是苹果公司提供一套概念来源于Foundation框架,编程接口面向C语言风格的API。虽然在Swift中调用这种C语言风格的API比较麻烦,但是在OS X和iOS开发过程中,有时候使用CoreFoundation框架的API是非常方便的,例如在与C语言混合编码的时候。 Core Foundation框架与Founda

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

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原生数据类型有对应关系。

650) this.width=650;" width="600" height="290" title="day60.jpg" alt="wKiom1bdBzWTXj4_AAKt44FvAc4610.jpg" src="http://img.jb51.cc/vcimg/static/loading.png" border="0" vspace="0" hspace="0" src="http://s4.51cto.com/wyfs02/M00/7C/F2/wKiom1bdBzWTXj4_AAKt44FvAc4610.jpg">


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

importCoreFoundationimportFoundationvarcfstr1:CFString="Hello,World"//创建CFString字符串varstr:String=cfstr1asstring//将CFString字符串转换为Swift原生字符串Stringvarcfstr2:CFString=str//将Swift原生字符串String转换为CFString字符串


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

欢迎关注关东升新浪微博@tony_关东升。
关注智捷课堂微信公共平台,了解最新技术文章、图书、教程信息

650) this.width=650;" title="00.png" alt="wKioL1bdB_7CPo0fAAAs2MBEZnc021.png" src="http://img.jb51.cc/vcimg/static/loading.png" src="http://s1.51cto.com/wyfs02/M00/7C/F0/wKioL1bdB_7CPo0fAAAs2MBEZnc021.png">


更多精品iOSCocos、移动设计课程请关注智捷课堂官方网站:http://www.zhijieketang.com
智捷课堂论坛网站:http://51work6.com/forum.php

总结

以上是内存溢出为你收集整理的《从零开始学Swift》学习笔记(Day60)――Core Foundation框架全部内容,希望文章能够帮你解决《从零开始学Swift》学习笔记(Day60)――Core Foundation框架所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1078889.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存