目标:保证一个类仅有一个示例,并提供一个访问它的全局访问点
示例代码:
#include
#include
#include
using namespace std;
class SingleTon
{
private:
SingleTon(){}
static SingleTon* Single;
public:
static SingleTon* GetInstance()
{
if(Single == NULL)
{
Single = new SingleTon();
}
return Single;
}
};
SingleTon* SingleTon::Single = NULL; //静态变量类外初始化
//客户端
int main()
{
SingleTon* s1 = SingleTon::GetInstance();
SingleTon* s2 = SingleTon::GetInstance();
if(s1 == s2)
{
cout << "ok" << endl;
}
else
{
cout << "no" << endl;
}
return 0;
}
阅读(543) | 评论(0) | 转发(0) |