在Windows开发中,我们经常需要将一些公共库共享,制作这类工程的一个小技巧与大家分享
在需要共享的函数或者类前面增加一个宏
#ifdef AA_EXPORT
#define Test_Export __declspec(dllexport )
#else
#define Test_Export __declspec(dllimport )
#endif
class Test_Export TestClass
{...};
在Test dll的makefile中,编译参数增加
-D AA_EXPORT
这样就保证了制作DLL时使用的是dllexport
其他引用Test DLL的程序不定义这个参数,这样默认就是dllimport