单例模式,这个错误怎么解决
CSingleton.h
class CSingleton
{
private:
CSingleton(){} //构造函数是私有的
static CSingleton *m_pInstance;
public:
static CSingleton* GetInstance()
{
if(m_pInstance == 0) //判断是否第一次调用
m_pInstance = new CSingleton();
return m_pInstance;
}
};
main.cpp
#include <iostream>
#include "CSingleton.h"
using namespace std;
int main()
{
CSingleton *st = CSingleton::GetInstance();
}
编译时错误为1>main.obj : error LNK2001: 无法解析的外部符号 "private: static class CSingleton * CSingleton::m_pInstance" (?m_pInstance@CSingleton@@0PAV1@A)
1>E:\Work\VS2005 Sapce\Singleton\Debug\Singleton.exe : fatal error LNK1120: 1 个无法解析的外部命令。
小弟刚转C++,希望指教