Menu Home

设计模式

递归模板实现单例模式

#include <iostream> using namespace std; template<class T> class Singleton { Singleton(const Singleton&); Singleton &operator=(const Singleton&); protected: Singleton() {} virtual ~Singleton() {} public: static T &instance() { static T theInstance; return theInstance; } }; // A sample class to be made into a Singleton class MyClass : public Singleton<MyClass> { int […]