我正在尝试使用SDL 2.0和O-OP创建一个框架。
这里我有一个CGraphicsManager类:
namespace tde {
class CGraphicsManager : public Singleton<CGraphicsManager>
{
private:
static SDL_Window* mWindow;
static SDL_Renderer* mRenderer;
public:
~CGraphicsManager();
static Uint32 Init(const char* title, Vector2i& size, Uint32 flags);
static SDL_Window* getWindow(){ return mWindow; }
static SDL_Renderer* getRenderer() { return mRenderer; }
};
}
当我尝试这样做时:
SDL_RenderClear(Graphics.getRenderer());
编译器说:
错误 C2248:Singleton::Singleton 无法访问 Singleton<'tde::CGraphicsManager'> 中的私有成员
我试图制作 mWindow 和 mRenderer 静态成员,但这种方式不起作用。帮助我在这个系统中以某种方式存储窗口和渲染器,使它们在 tde 命名空间中可见和可用!