这里我们主要分转出来了一个类,给人一种Java程序的感觉
转自http://blog.youkuaiyun.com/a342374071/article/details/18270643
class singleStance{
private :
singleStance();
public :
static singleStance* onlystance;
static singleStance* getStance(){
lockBase* lockbase = new lockBase();
lockBase->lock();
if(onlystance){
onlystance = new singleStance();
}
lockBase->unlock();
return onlystance;
}
};
class lockBase{
protected:
friend class singleStance;
CRITICAL_SECTION cs;
public :
lockBase(){
::InitializeCriticalSection(&cs);
}
void lock(){
::EnterCriticalSection(&cs);
}
void unlock(){
::LeaveCriticalSection(&cs);
}
~lockBase(){
::DeleteCriticalSection(&cs);
}
};