0

我在学校作业中实现单例设计模式,这是我的班级头文件:

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在头文件本身中使用,所以我不确定该怎么做。我知道这很愚蠢,但仍然...

想法?

4

1 回答 1

4

您的静态单例实例指针应该是类成员。目前它只是一个自由指针。

class Scheduler {
// as before
private:
    Scheduler();
    static Scheduler* _singleton; // declare it in the class
};

并在实现文件中:

Scheduler * Scheduler::_singleton = 0;
于 2012-04-26T19:59:44.253 回答