class Singleton {
  static std::auto_ptr<Singleton> inst;
  Singleton() {}
public:
  static inline Singleton* GetObject() {
    return inst;
  }
}
std::auto_ptr<Singleton> Singleton::inst( new Singleton() );