So, classic simple Singleton realization is following:
class Singleton
{
private:
static Singleton* singleton;
Singleton() {}
public:
static Sing
delete for newWhile there is no actual memory leak (in most modern operating systems), worse thing is that your Singleton destructor doesn't get called. And if you acquire some resources, they propbably would leak.
Use smart pointer to store instance, consider std::unique_ptr (with C++11) or boost::auto_ptr