devxlogo

A Better Way to Force a C++ Class to Be a Singleton

A Better Way to Force a C++ Class to Be a Singleton

The tip “How to Force a C++ Class to Be a Singleton” does not provide enough flexibility for the programmer to control the creation/deletion of the singleton instance. The following code provides better control over memory and class instance.

class MySignleton{public:    static MySingleton* GetInstance()    {       if(!m_pThis)          m_pThis = new MySingleton();       return m_pThis;    }    static void DeleteInstance()    { if(m_pThis)       {       delete m_pThis;       m_pThis = NULL;      }    }private:    MySingleton(){ m_pThis = NULL;}    ~MySingleton();    static MySingleton* m_pThis;};

devx-admin

Share the Post: