链接器错误消息“private: static class Worlds::Game * Worlds::Game::instance”
以下是与错误相关的代码段。
来自 Game.h
static Worlds::Game* instance;
static Worlds::Game* getInstance();
来自 Game.cpp
Worlds::Game* instance = 0;
Worlds::Game* Worlds::Game::getInstance()
{
if (instance)
{
return instance;
}
else
{
return instance = new Worlds::Game();
}
}
所以我的问题是为什么我会收到这个错误,因为我应该涵盖所有基础来创建我的游戏类的单例?
编辑:
我忘了在 Game.cpp 中添加我的所有 Glut 回调,它们需要调用 Game 中执行某些操作的函数。
void onKeyDownCallback(unsigned char key, int mouseX, int mouseY)
void onKeyUpCallback(unsigned char key, int mouseX, int mouseY)
void timerCallback(int value)
void onWindowReshapeCallback(int w,int h)
void onMouseClickedCallback(int button, int state, int mouseX, int mouseY)
void onMouseMovedCallback(int deltaX, int deltaY)
void displayCallback()