一,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做了優化)。