如果想动态链接库文件在编译时,导出函数名称不发生改变。在定义导出函数时,需要加上限定符:extern "C"。双引号中的C一定要大写。
另外,extern "C"可以解决C++和C语言之间相互调用时函数命名的问题。但是这种方法有个缺陷,不能用于导出一个类的成员函数,只能用于导出全局函数这种情况。
调用约定:extern "C"是C调用约定,_stdcall是标准的调用约定,即WINAPI调用约定(pascal调用约定)。
用_stdcall调用约定时,通过模块定义文件(DEF)解决名字改编问题。