三种单例模式的实现(C++)
今天主要是学习了单例模式的三种实现,包括懒汉式、双重检查锁懒汉式和饿汉式。
首先,我们应该要理解单例模式的概念,单例模式简单的来说就是一个类只允许有一个对象,为此,我们可以知道必须要控制类的构造行为,故将构造函数私有化、同时将该类的对象
定义为该类的静态数据成员(因为构造函数被私有化了)。
- 首先是懒汉式,懒汉式理解起来最为直接,直接上代码
#include "commonHeader.h" class lanhan { public: static lanhan * getInstance() { if (nullptr == instance) { instance = new lanhan(); } return instance; } private: lanhan() { } static lanhan * instance; }; lanhan * lanhan::instance = nullptr;