在哪个cpp文件中使用的该动态库或静态库,就在该h/cpp文件所在的工程的预处理命令中添加库中的宏。

如有库工程add,其头文件如下

#ifndef _ADD_H
#define _ADD_H

#if defined( _WIN32 ) || defined( __MINGW32__ )
#   if defined( ADD_EXPORTS )
#       define ADD_EXPORT __declspec(dllexport)
#   elif defined( ADD_USE_DLL_IMPORT ) || !defined( ADD_USE_STATIC_LIB )
#       define ADD_EXPORT __declspec(dllimport)
#   else
#       define ADD_EXPORT
#   endif

ADD_EXPORT int add(int a, int b);

#endif

则VS上编译动态库时,需要在add工程的预处理指令中增加ADD_EXPORTS。

 

另有测试工程test:若其要使用动态库中的add函数,则其工程中需要使用 ADD_USE_DLL_IMPORT 预处理指令。

相关文章:

  • 2021-11-09
  • 2022-12-23
猜你喜欢
  • 2021-06-28
  • 2021-08-18
  • 2021-07-01
  • 2021-12-30
  • 2021-08-01
  • 2021-12-23
相关资源
相似解决方案