我试图公开一个静态变量。我曾尝试将其作为公共静态和使用访问函数来执行,但是当我Stage::SetFramework( this );
在我的框架类中使用该命令时,或者即使我systemFramework
公开并使用Stage::systemFramework = this
,我得到:
framework.obj||error LNK2001: unresolved external symbol "public: static class Framework * Stage::systemFramework" (?systemFramework@Stage@@2PAVFramework@@A)|
我不确定为什么这不起作用。我显然错过了一些东西有人可以帮忙吗?
#pragma once
#include "event.h"
#ifndef Framework
class Framework;
#endif // Framework
class Stage
{
protected:
static Framework* systemFramework;
public:
// static Framework* systemFramework;
// Stage control
virtual void Begin() = 0;
virtual void Pause() = 0;
virtual void Resume() = 0;
virtual void Finish() = 0;
virtual void Event(FwEvent *e) = 0;
virtual void Update() = 0;
virtual void Render() = 0;
static void SetFramework( Framework* FrameworkObject )
{
systemFramework = FrameworkObject;
};
/*
static Framework* GetFramework()
{
return systemFramework;
};
*/
};
谢谢