单件模式Singleton的实现
#include<iostream>
using namespace std;
class Singleton
{
private :
static Singleton* singleton;
Singleton()
{
cout<<"This is the Singleton";
}
public:
static Singleton* getSingleton()
{
if(singleton==0)
{
singleton=new Singleton;
}
return singleton;
}
};
void main()
{
Singleton *s;
s=Singleton::getSingleton();
}
以上代码链接的时候出现错误,不知道是什么原因
[解决办法]
#include<iostream>
using namespace std;
class Singleton
{
private :
static Singleton* singleton;
Singleton()
{
cout<<"This is the Singleton";
}
public:
static Singleton* getSingleton()
{
if(singleton==0)
{
singleton=new Singleton;
}
return singleton;
}
};
Singleton* Singleton::singleton = NULL;
void main()
{
Singleton *s;
s=Singleton::getSingleton();
}
[解决办法]
C++类静态成员的初始化
http://blog.csdn.net/jakiechen68/article/details/7288225