当我想在Visual Studio(c ++)中创建.dll文件时,我在Header-File中使用以下代码:
#ifdef MYPROJDLL_EXPORTS
#define MYPROJDLL_API __declspec(dllexport)
#else
#define MYPROJDLL_API __declspec(dllimport)
#endif
我使用“MYPROJDLL_API”作为宏来标记必须导出的类的函数。 Visual Studio在项目设置中自动创建“MYPROJDLL_EXPORTS”的定义。我问自己为什么要创建一个if语句,因为“MYPROJDLL_EXPORTS”是由Visual Studio在构建时定义的,所以else-branch永远不会在构建时触发。