『ゼロから学ぶSwift』学習ノート(Day 60)——Core Foundationフレームワーク


オリジナルの文章、転載を歓迎します.転載は明記してください:関東昇のブログ
Core Foundationフレームワークは、アップル社が提供している概念はFoundationフレームワークに由来し、プログラミングインタフェースはC言語スタイルのAPI向けである.このようなC言語スタイルのAPIをSwiftで呼び出すのは面倒であるが、OS XやiOSの開発過程においてCoreFoundationフレームワークのAPIを使用することは非常に便利であり、例えばC言語と混合符号化する場合がある.
Core FoundationフレームワークはFoundationフレームワークと密接に関連しており、同じインタフェースを持っているが、異なる.Core FoundationフレームワークはC言語スタイルに基づいており、FoundationフレームワークはObjective-C言語スタイルに基づいている.OS XとiOSのプログラムコードには、多くの言語スタイルのコードが混在することが多く、開発がさらに面倒になります. 
データ型マッピング
Core Foundationフレームワークは、いくつかのデータと操作をカプセル化した不透明なデータ型を提供し、「クラス」とも呼ばれ、CFTypeクラスに継承され、CFTypeはCore Foundationフレームワークタイプのルートクラスです.これらのデータ型はFoundationフレームワークに対応するデータ型があり、これらのデータ型にはSwiftオリジナルデータ型と対応関係があるものもある.
SwiftオリジナルタイプとCore Foundationタイプの変換例を見てみましょう.
import CoreFoundation
import Foundation
 
var cfstr1: CFString ="Hello,World"     //  CFString   
 
var str: String = cfstr1as String           // CFString      Swift     String
 
var cfstr2: CFString = str                   // Swift     String   CFString   

この変換中にCore FoundationタイプをSwiftオリジナルタイプに変換するには強制タイプ変換が必要です.
 
关东升新浪微博@tony_へようこそ関東昇.智捷教室の微信公共プラットフォームに注目し、最新技術文章、図書、教程情報のより多くの逸品iOS、Cocos、モバイル設計課程を理解し、智捷教室の公式サイトに注目してください.http://www.zhijieketang.com智捷教室フォーラムのウェブサイト:http://51work6.com/forum.php