設(shè)計(jì)模式之單件模式
在單線程中實(shí)現(xiàn)代碼很簡(jiǎn)單:
#include "stdafx.h"
#include <iostream>
#include "boost/shared_ptr.hpp"
using namespace std;
using namespace boost;

class singleTon{
public:
static singleTon *getInstance(){
if (mySingleton.get() == NULL)
{
mySingleton = shared_ptr<singleTon>(new singleTon());
return mySingleton.get();
}
else
{
return mySingleton.get();
}

};
private:
static shared_ptr<singleTon>mySingleton;
singleTon()
{
std::cout<<"singletom has been created!"<<std::endl;
};
};
shared_ptr<singleTon>singleTon::mySingleton = shared_ptr<singleTon>();


int _tmain(int argc, _TCHAR* argv[])
{

for(int i = 0; i < 100; i++)
{
singleTon::getInstance();
}
return 0;
}

這里利用shared_ptr來進(jìn)行資源管理。
這個(gè)設(shè)計(jì)模式的思想就是在類中設(shè)置一個(gè)靜態(tài)對(duì)象,然后用singleTon::getInstance()這個(gè)函數(shù)去調(diào)用這個(gè)靜態(tài)對(duì)象









































這里利用shared_ptr來進(jìn)行資源管理。
這個(gè)設(shè)計(jì)模式的思想就是在類中設(shè)置一個(gè)靜態(tài)對(duì)象,然后用singleTon::getInstance()這個(gè)函數(shù)去調(diào)用這個(gè)靜態(tài)對(duì)象
posted on 2012-04-25 11:27 sheng 閱讀(417) 評(píng)論(0) 編輯 收藏 引用