Head First设计模式C++实现Singleton模式

 定义:

  单件模式确保一个类只有一个实例,并提供一个全局访问点。

  由于该模式的结构很简单,所以此处不再给出UML图,需要注意的是在下面实现代码中给出的一个多线程控制的类可以在其他代码中借鉴。关于该模式的实现还可以参考下面两个链接的实现,里面给出了更加完美的实现。

  1. http://www.kuqin.com/design-patterns/20071113/2300.html

  2. http://www.host01.com/article/software/cc/20060917184438144.htm

代码实现:

  注意:在代码实现时注意考虑多线程安全的情况,另外还需要考虑内存的释放,这里只实现了多线程安全,内存的释放可以使用“智能指针”来实现,可以参考上面两个链接的实现

程序输出:

在锅炉内填满巧克力和牛奶的混合物
将炉内物煮沸
排出巧克力和牛奶
请按任意键继续. . .

 

原文地址:https://www.cnblogs.com/zhangyunlin/p/6167956.html