1. WIN32 接口库C定义规范示例
1 #ifdef BADATASYNCDSK_EXPORTS 2 #define BADS_API(type) extern "C" __declspec(dllexport) type 3 #elif defined( BADATASYNCDSK_LIB ) 4 #define BADS_API(type) type 5 #else 6 #define BADS_API(type) extern "C" __declspec(dllimport) type 7 #endif 8 9 /** 10 * \brief 初始化数据同步模块并连接设备 11 * \return 0 - 操作失败 <br> 12 * 非0 - 操作成功 13 */ 14 BADS_API(int) BADS_Init( void );
采用 BADS_API(int)该类方式定义接口,可方便将接口定义为 lib 和 dll工程
- 将源码编译为DLL接口库时,只需在工程中定义宏 BADATASYNCDSK_EXPORTS,导入使用时,无需定义任何宏
- 将源码编译为 LIB接口库时,只需在工程中定义宏 BADATASYNCDSK_LIB, 导入使用时,需在导入工程中定义宏 BADATASYNCDSK