[创建型] -- 单例模式
单例模式,实现一个全局唯一的类对象,并提供一个全局访问点。
#include <iostream>
using namespace std;
class CSingleton // 单例模式
{
private:
CSingleton() { b++;}
static int b; // 用于证明全局只存在一个CSginleton的对象
public:
virtual ~CSingleton() {}
static CSingleton Instance()
{
static CSingleton a;
return a;
}
void operate()
{
cout << "访问唯一实例" << endl;
cout << CSingleton::b << endl;
}
};
int CSingleton::b = 0;
#define theSample (CSingleton::Instance())
void main()
{
theSample.operate();
theSample.operate();
}
执行结果:
访问唯一实例
1
访问唯一实例
1