Я новичок в C ++, и я получил эту ошибку компоновщика,
LNK2001: неразрешенный внешний символ "private: статический класс DebugLog Singleton :: instance" (? Instance @? $ Singleton @ VDebugLog @@@@ 0VDebugLog @@ A)
А вот и проблемные коды:
template<typename T>
class Singleton {
public:
static T& getInstance() {
return instance;
}
private:
static T instance;
};
class DebugLog : public Singleton<DebugLog> {
public:
void doNothing() {}
};
void main() {
DebugLog::getInstance().doNothing();
}
Может кто-нибудь сказать мне, как я могу исправить эту ошибку компоновщика без потери наследования Singleton в DebugLog?
Спасибо.