首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

单件形式(Singleton Pattern)之C++实现

2013-09-09 
单件模式(Singleton Pattern)之C++实现单件模式确保一个类只有一个实例,并提供一个全局访问点。#include i

单件模式(Singleton Pattern)之C++实现

单件模式确保一个类只有一个实例,并提供一个全局访问点。

#include <iostream>#include <string>using namespace std;class Singleton{public:static Singleton* GetInstance();void print();void write(string strTmp);private:Singleton();static Singleton* instance;string str;};Singleton::Singleton(){str="Test";}Singleton* Singleton::GetInstance(){if (instance==NULL)instance=new Singleton();return instance;}void Singleton::print(){cout<<str<<endl;}void Singleton::write(string strTmp){str=strTmp;}Singleton * Singleton::instance = NULL;void main(){Singleton* p=Singleton::GetInstance();Singleton* p2=Singleton::GetInstance();p->print();p2->print();p->write("haha");p->print();p2->print();}

以上实现的单件模式还是有缺陷的,不适合多线程环境。

热点排行