1. 程式人生 > >C與C++混合編譯

C與C++混合編譯

C語言與C++的函式編譯後的命名規則不同,因此在C++工程中直接引用C實現的原始碼會存在“undefined reference”問題,即找不到函式的實現。

因此,在C的標頭檔案前,應使用extern “C”提示編譯器,該程式碼是使用C語言進行編寫的,如以下形式:

extern “C” {
#include lib_from_c1.h
#include lib_from_c2.h
#include lib_from_c3.h
}

再次進行編譯,即可排除問題。