单例模式(也常说单件模式)是最为常用的一种设计模式,许多项目都会出现它的身影。
保证内存中只有一个单例类的对象,常用全局静态变量实现。
在C++中实现单例模式只需要简单几个步骤即可:
- 将构造函数私有化
- 在类中定义一个静态的指针
- 在类外将静态指针初始化为NULL
- 定义一个返回值为指针的静态成员函数 static Singleton* getInstance();
具体简单实例(线程不安全):
运行结果:
若要实现线程安全,则可以加锁,或者使用饿汉模式即程序一启动就创建了一个单例对象,如下所示: