现在的位置: 首页 > 综合 > 正文

C++设计模式之五:SINGLETON(单件模式)

2013年10月16日 ⁄ 综合 ⁄ 共 506字 ⁄ 字号 评论关闭

一、意图:

保证一个类仅有一个实例,并提供一个全局的访问点。

二、类图:

三、组成元素:

Singleton:需要提供唯一实例;构造函数要为private;

四、代码实现:

#include "iostream"

using namespace std;

class Singleton
{
private:
	static Singleton* uniqueInstance;
private:
	Singleton()
	{
	}
public:
	static Singleton* GetInstance()
	{
		if (uniqueInstance==NULL)
		{
			uniqueInstance=new Singleton();
			return uniqueInstance;
		}
		else
			return uniqueInstance;
	}
	void sayHello()
	{
		cout<<"Singleton Created"<<endl;
	}
	
};
Singleton* Singleton::uniqueInstance=NULL;	//初始化
void main()
{
	Singleton* singleton=Singleton::GetInstance();
	singleton->sayHello();
}

抱歉!评论已关闭.