/* */ #ifndef _D_SINGLETON_HOLDER_H_ #define _D_SINGLETON_HOLDER_H_ namespace aria2 { template class SingletonHolder { private: static T instance_; SingletonHolder() {} public: ~SingletonHolder() {} static T& instance() { return instance_; } static void instance(T& instance) { instance_ = instance; } }; template T SingletonHolder::instance_; } // namespace aria2 #endif // _D_SINGLETON_HOLDER_H_