单键为大多数熟知,咱们这次使用模板的方式来完成这个工作
template<typename T>class Singleton{public: Singleton(void){} virtual ~Singleton(); static T* InstancePtr(void); static T& Instance(void);private: static T* m_pSingle;};
template<typename T>T* Singleton<T>::m_pSingle = 0;
template<typename T>T& Singleton<T>:...
在阅读了《GoF 23种设计模式解析附C++实现源码(2nd Edition)》之后,发现里面的代码并不能直接使用,也许是因为作者只是为了讲述设计模式的思想,所以代码中有一些new的指针并没有删除它,又或是希望这些指针让调用者用者自己管理,关于这一点,对初学者来说也是比较重要的,需要在设计时考虑到的问题。
文章中提到一些我以前没有用过的设计模式的方式,很感兴趣,比如Factory模式中,讲到使用模板来做,但代码中没有给出完整的代码,于是就动手试验一下。
//=====main.cpp=========
#include <stdlib.h>#include <iostream>
...