调用静态成员变量导致DLL

时间:2016-08-22 08:52:05

标签: c++ variables dll static

我正在测试我正在编写的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)

0 个答案:

没有答案