我正在测试我正在编写的DLL库,在尝试编译之后,我得到一个类中的静态变量的LNK2001错误。 FooApi.h
#ifdef PLATFORM_WINDOWS
#ifdef FOO_DLL
#define FOO_API __declspec(dllexport)
#else
#define FOO_API __declspec(dllimport)
#endif
#else
#define FOO_API
#endif
Bar.h
class FOO_API Bar
{
private:
static bool mIsActive;
};
并在Bar.cpp中:
bool FOO_API Bar::mIsActive = false;
使用DLL构建测试项目时,我得到一个LNK2001未解析的外部符号。关于如何解决这个问题的任何想法?旁注:同一类中的任何静态函数都没有这个问题。
错误:
错误LNK2001:未解析的外部符号" public:static bool vkdebug ::酒吧:: mIsActive" (?mIsActive @酒吧@ vkdebug @ 2_NA)