Вот код, почему я получаю неопределенную ссылку при линковке?
g++ -Wall -o main main.o TimerManager.o
TimerManager.o: In function `TimerManager::Instance()':
TimerManager.cpp:(.text+0x2d): undefined reference to `TimerManager::TimerManager()'
collect2: ld returned 1 exit status
make: *** [main] Error 1
-
#include "TimerManager.h"
int main(int argc, char *argv[])
{
TimerManager *l_tm = TimerManager::Instance();
return 0;
}
#ifndef TIMERMANAGER_H_
#define TIMERMANAGER_H_
#include <stdlib.h>
class TimerManager {
public:
static TimerManager *Instance();
~TimerManager();
protected:
TimerManager();
private:
static TimerManager *s_instance;
};
#endif
#include "TimerManager.h"
TimerManager *TimerManager::s_instance = NULL;
TimerManager::TimerManager()
{
}
TimerManager::~TimerManager()
{
delete s_instance;
}
TimerManager *TimerManager::Instance() {
if (s_instance == NULL) {
s_instance = new TimerManager();
}
return s_instance;
}