单例模式(Singleton) 保证一个类仅有一个实例,并提供一个访问它的全局访问点。
//Singleton.h
#ifndef _SINGLETON_H_
#define _SINGLETON_H_
class Singleton
{
private:
Singleton(){};
static Singleton* _instance;
public:
static Singleton* GetInstance()
{
if (_instance==0)
{
_instance = new Singleton();
}
return _instance;
}
};
Singleton* Singleton::_instance= 0;
#endif
//main.cpp
#include "Singleton.h"
#include <iostream>
using namespace std;
int main()
{
Singleton* s1 = Singleton::GetInstance();
Singleton* s2 = Singleton::GetInstance();
if (s1==s2)
{
cout<<"two instances are same.."<<endl;
}
return 0;
}