保证一个类只有一个实例存在:
1. 构造函数私有化
2. 提供一个全局的静态方法
3.指向本类对象的静态指针
class Singelton
{
private:
Singelton();
public:
static Singelton *GetInstance()
{
if (psl == NULL)
{
psl = new Singelton;
}
return Singelton;
}
static Singelton *FreeInstance()
{
if (psl)
{
delete psl;
psl = NULL;
}
}
private:
static Singelton *psl;
};
Singelton *Singelton::psl = NULL;
Singelton *p1 = Singelton::GetInstance();
Singelton *p2 = Singelton::GetInstance();
Singelton::FreeInstance()