wxhelper-new/inc/singleton.h

23 lines
448 B
C
Raw Normal View History

2024-06-16 13:17:24 +08:00
#ifndef BASE_SINGLETON_H_
#define BASE_SINGLETON_H_
namespace base {
template <typename T>
class Singleton {
protected:
Singleton() {}
~Singleton() {}
Singleton(const Singleton&) = delete;
Singleton& operator=(const Singleton&) = delete;
Singleton(Singleton&&) = delete;
Singleton& operator=(Singleton&&) = delete;
public:
static T& GetInstance() {
static T instance{};
return instance;
}
};
} // namespace base
#endif