设计模式之单例模式,懒汉模式与饿汉模式
??单例模式是一种常用的软件设计模式,它保证在软件运行过程中对象在内存中只存在一份实例,单例模式通常有懒汉模式与饿汉模式。
1.懒汉模式
懒汉模式是在第一次调用的时候才创建实例,但是在多线程的环境下很可能创建多个实例,因此是线程不安全的。
C++代码:
这里切记除了给类添加一个保护的构造函数外,还需添加一个保护的拷贝构造函数,不然编译器会给我们添加一个public访问标志的构造函数,这时我们按照下面这样可以生成多个实例:
2.饿汉模式
饿汉模式是在程序加载的时候就已经创建了一个实例,不存在多线程环境下创建多实例的问题,因此是线程安全的。
C++代码:
原文地址:
http://www.uptoday.net/articles/2017/12/16/1513423966809.html#b3_solo_h4_2
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!