OC/Swift/C/C++混合使用的編程姿勢


一,OC調用C語言方法
1.OC中的.m文件對C語言完全兼容,可以直接導入C頭文件,進行使用
2.定義一個.c的C語言文件,在.m文件中導入,就可以使用。
 
二,OC調用C++語言方法
1.需要將.m文件后面再加一個m,改成.mm文件,.mm文件對C/C++完全兼容,導入C/C++頭文件就可以使用
2.定義一個.cpp的C++文件,在.mm文件中導入就可以使用了。
 
 
三,C++調用OC語言方法
1.在定義的OC類中,若想讓C++文件成功進入OC文件,就需要將OC類的.h文件中涉及到OC中的方法全部刪掉。然后在.h文件中定義C/C++語言的方法名。在.mm文件中可以用OC/C/C++語言來實現。
 
 
四,swift調用C語言方法
swift語言無法直接使用C語言方法,需要通過橋接頭文件使用。
1.在swift工程下創建一個C文件同時生成bridging-header橋接頭文件。
2.在C語言.h文件中聲明方法名,在.c文件中實現方法,在橋接文件中導入C語言文件#include “a.h”
3.在swift文件中使用
 
五,swift調用C++語言方法
1.在swift工程下創建一個OC文件同時生成bridging-header橋接頭文件。
2.在OC語言.h文件中聲明方法名,在.mm文件中實現方法,在橋接文件中導入C語言文件#include “a.h”
3.在swift文件中使用
 
 
六,bridging-header橋接頭文件說明
bridging-header橋接頭文件的作用是讓swift語言執行oc語言的方法的。
所以里面是oc類的引入#include “oc.h”
同時系統也會創建一個不可見的橋接文件供oc調用swift語言的方法。
這個橋接文件是:工程名-Swift.h。
可以通過在oc類中導入這個頭文件,使用swift類中的方法(現在不導入這個文件也可以使用,估計是Xcode做了優化)。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM