c++单例模式

总结:

1 全局只有一个实例化的类
2 单例模式的类,必须构造函数私有。即,不可以使用new进行该类的初始化。
3 单例模式的类,必须提供一个可以让外部访问的接口(且是static类型的),通常这样的接口,都是公有的。
增加静态私有,该类的指针
4 静态变量,类外初始化。

单例模式类型:
懒汉。 饿汉

其中懒汉模式:

表示:当使用的时候,才进行创建

class  A {
public:
	static A* getinstance(){
		if (a == nullptr) {
			a = new A;
		}
		return a;
	}
private:
	A(){};
	static A* a;
	
}
A* A::a = nullptr;

饿汉式

表示:程序运行的时候,就创建,创建的比较急,所以叫饿汉

class  H {
public:
	static H* getinstance(){
		return h;
	}
private:
	H(){};
	static H* h;
	
}
H* H::h = new H;

你可能感兴趣的:(c/c++,单例模式,c++,开发语言)