首页 > 试题广场 >

C语言编写的动态库中的函数,如何才能被C++调用?

[问答题]
C语言编写的动态库中的函数,如何才能被C++调用?
推荐
C++ 编译器需要支持函数重载,会改变函数的名称,因此dll的导出函数通常是标准C定义的。这就使C和 C++互相调用变得很常见。但是有可能又会直接用C来调用,不想重新写代码,让标准C编写的dll函数定义在C和 C++编译器下都能编译通过,通常会使用以下格式:(这个格式在很多重复的代码中很常见)
#if defined(_cplusplus)
extern"C"{
#endif
//在这里写标准C程序,例如dll导出函数的定义
#ifdef__cplusplus
}
#endif
编辑于 2015-02-06 16:11:59 回复(0)