我正在学校作业中实现单例设计模式,这是我的类头文件:
class Scheduler {
public:
static Scheduler * instance();
~Scheduler();
private:
Scheduler();
};
static Scheduler * _singleton = 0; // WARNING HERE
我的问题是我不断收到此错误:
../Scheduler.h:60:20: warning: ‘_singleton’ defined but not used [-Wunused-variable]
而且我们必须提交没有编译警告的作业。我如何摆脱这个警告?我不需要在头文件本身中使用 _singleton
,所以我不确定该怎么做。我知道这很愚蠢,但仍然...
想法?
最佳答案
你的静态单例实例指针应该是一个类成员。目前它只是一个免费的指针。
class Scheduler {
// as before
private:
Scheduler();
static Scheduler* _singleton; // declare it in the class
};
在实现文件中:
Scheduler * Scheduler::_singleton = 0;
关于c++ - -Wunused-变量警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10340515/