Where to release the object in Singleton class?

Light Poster
18Sep2008,16:10   #1
BS Dahiya's Avatar
Where to release the object in Singleton class? Should we go destructor(Private) or any other static member function? I mean , what is the best solution?
Mentor
19Sep2008,13:03   #2
xpi0t0s's Avatar
Not the destructor, because deleting the object calls the destructor and that'll be recursive.
Normally you would implement a get method which creates the object if it doesn't exist, then returns a reference to itself, and a release method which deletes the object if there are no references left. These are both static functions. If it's a global object of which there will always be one instance then get just returns a reference and release doesn't need to exist.
Light Poster
23Sep2008,14:11   #3
BS Dahiya's Avatar
Thanks a lot. It is really fruitful.I got the idea,
Regards,
BSD