Singleton Design pattern?
It ensures that a class has only one instance, and provides a global point of access to it. This pattern makes the class itself responsible for creating only one instanceof it. class Singleton { private : static Singleton * pSingleInst; protected : Singleton(); Singleton(const Singleton&); public : static Singleton* getInstance(); } When the static function is called for the first time it creates the instance. Thereon for every subsequent invocation this method will merely return that object again and again.