Singleton.h
上传用户:sz83729876
上传日期:2013-03-07
资源大小:4140k
文件大小:1k
源码类别:

OpenGL

开发平台:

Windows_Unix

  1. #ifndef _SINGLETON_H_
  2. #define _SINGLETON_H_
  3. #include <windows.h>
  4. template<class T> class Singleton
  5. {
  6.     protected:
  7.         Singleton() {}
  8.         Singleton( const Singleton & ) {}
  9.         Singleton &operator = (Singleton &) {}
  10.         static T* pInst;
  11.     public:
  12.         static T* GetInstance()
  13.         {
  14.             if (pInst)
  15.                 return pInst;
  16.             pInst = new T;
  17.             return pInst;
  18.         }
  19.         static void ReleaseInstance()
  20.         {
  21.             if (pInst)
  22.             {
  23.                 delete pInst;
  24.                 pInst = NULL;
  25.             }
  26.         }
  27. };
  28. template<class T> T *Singleton<T>::pInst = 0;
  29. #endif