#include <iostream>
#include <string>
using namespace std;
class singleton
{
private:
singleton(){}; //构造函数为private,禁止客户new出实例
virtual ~singleton()
{
if (instance!=NULL)
delete instance;
};
static singleton *instance;
public:
static singleton *GetInstance()
{
if (instance==NULL)
{
instance = new singleton;
}
return instance;
}
};
singleton *singleton::instance=NULL;
int main()
{
singleton *s1=singleton::GetInstance();
singleton *s2=singleton::GetInstance();
if (s1==s2)
{
cout<<"同一个实例"<<endl;
}
system("pause");
return 0;
}