class Singleton
{
private:
  static Singleton *m_Object;
  Singleton()
  {
  }

public:
  virtual ~Singleton()
  {
  }

  static Singleton *GetObject()
  {
    if(m_Object == 0) {
      m_Object = new Singleton;
    }
    return m_Object;
  }
};

こうか?