单例模式:
- 一个类在任何情况下都绝对只有一个实例,并提供一个全局访问点。单例模式是创建型模式。
单例模式的应用场景:
- 某类只要求生成一个对象的时候,如一个国家主席,班级班长等。
单例模式的好处:
- 由于单例模式只允许创建一个对象,共享该对象可以节省内存,并加快对象访问速度,数据库的连接池
单例模式常用的两种实现:
方式一:
class Singleton {
public:
~Singleton();
Singleton* getInstance() {
static Singleton singleton;
return &singleton;
}
private:
Singleton();
}
方式二:
class Singleton {
public:
~Singleton();
Singleton& getInstance() {
static Singleton singleton;
return singleton;
}
private:
Singleton();
}