Singleton

ensure a class has only one instance and provide a global point of access

Applicability

Implementation

     // .h file 
  
     class Singleton {
     public:
  	static Singleton instance();
     protected: 
limit access

Singleton(); private: static Singleton* _instance; }; // .c file Singleton* Singleton::_instance = 0; Singleton* Singleton::instance() { if (_instance == 0) _instance = new Singleton(); return _instance; }

Consequences

Etcetera

see GOF
slide: Singleton