我正在使用带有虚拟机 VmPlayer 的 QNX momemtics IDE 5.0.1 来运行 QNX 客户端。我在课堂上使用单例模式。调用类的实例时,我收到错误“未定义的引用”错误:类内初始化非整数类型的静态数据成员“DemoClass * DemoClass :: s_instance”所需的“constexpr” [-fpermissive]” . 代码片段如下:
class DemoClass
{
static DemoClass*s_instance = nullptr;
public :
DemoClass();
virtual ~DemoClass();
//singleton
static DemoClass* GetInstance()
{
if (!s_instance)
s_instance = new DemoClass;
return s_instance;
}
}
我在另一个类中调用 getter 函数,如下所示:
class AppMgr
{
DemoClass* m_demo;
public:
AppMgr();
virtual ~AppMgr();
void Load();
);
void AppMgr::Load()
{
m_demo = = DemoClass::GetInstance();
}
我添加了仍然面临错误的静态成员的定义。请建议。