C,C++編譯時對函數的命名規則是不一致的,所以在混合調用時,需要採用一些規約。
1.C++調用C時,爲了告訴編譯器,調用C函數時,採用C編譯方式,需要按照如下格式編碼:
#ifdef __cplusplus
extern "C" {
#endif
代碼正文
#ifdef __cplusplus
}
#endif
2.C調用C++時,因爲C不支持面向對象的特性,所以需要將C++進行封裝, 也就是新定義一個接口,在接口裏寫入類的調用方式。但是封裝文件需要加入按照C的方式進行編譯。
封裝頭文件加入如下格式:
#ifdef __cplusplus
extern "C" {
#endif
代碼正文
#ifdef __cplusplus
}
#endif