API 用于制作 C++ 库的宏
API macro for making C++ library
我是 C++ 初学者。
我已经创建了一个 CMake 库项目,
我添加了 2 个库,一个叫做
马赛克(共享)和 mosaic_s(静态)。
问题是我如何使用宏自动为 __declspec(dllexport) 设置宏
在构建共享库时,在构建静态库时将其设置为空。
在你的 make 文件中定义一个符号,它会告诉你它是否共享,然后你可以使用像
这样的预处理器
#ifndef SHARED
#define EXPORT
#else
#define EXPORT __declspec(dllexport)
#endif
然后在你的代码中你会
EXPORT whatever_you_are_exporting
如果您在 make 文件中定义了 SAHRED
,那么 EXPORT
将是 __declspec(dllexport)
,如果您没有定义,那么 EXPORT
将什么都不是。
我是 C++ 初学者。
我已经创建了一个 CMake 库项目, 我添加了 2 个库,一个叫做 马赛克(共享)和 mosaic_s(静态)。
问题是我如何使用宏自动为 __declspec(dllexport) 设置宏 在构建共享库时,在构建静态库时将其设置为空。
在你的 make 文件中定义一个符号,它会告诉你它是否共享,然后你可以使用像
这样的预处理器#ifndef SHARED
#define EXPORT
#else
#define EXPORT __declspec(dllexport)
#endif
然后在你的代码中你会
EXPORT whatever_you_are_exporting
如果您在 make 文件中定义了 SAHRED
,那么 EXPORT
将是 __declspec(dllexport)
,如果您没有定义,那么 EXPORT
将什么都不是。