diff options
author | chai <chaifix@163.com> | 2019-01-12 21:48:33 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2019-01-12 21:48:33 +0800 |
commit | 8b00d67febf133e89f6a0bfabc41feed555dc4a9 (patch) | |
tree | fe48ef17c250afa40c2588300fcdb5920dba6951 /src/libjin/common/je_singleton.hpp | |
parent | a907c39756ef6b368d06643afa491c49a9044a8e (diff) |
*去掉文件前缀je_
Diffstat (limited to 'src/libjin/common/je_singleton.hpp')
-rw-r--r-- | src/libjin/common/je_singleton.hpp | 84 |
1 files changed, 0 insertions, 84 deletions
diff --git a/src/libjin/common/je_singleton.hpp b/src/libjin/common/je_singleton.hpp deleted file mode 100644 index 51dc9c5..0000000 --- a/src/libjin/common/je_singleton.hpp +++ /dev/null @@ -1,84 +0,0 @@ -#ifndef __JE_SINGLETON_H__ -#define __JE_SINGLETON_H__ - -#include "je_object.h" -#include "je_exception.h" - -namespace JinEngine -{ - - /// - /// Singleton base class. - /// - template<class T> - class Singleton : public Object - { - public: - /// - /// Get singleton. - /// - /// @param Singleton instance of class. - /// - static T* get() - { - if (_instance == nullptr) - _instance = new T; - return _instance; - } - - /// - /// Destroy instance of singleton. - /// - static void destroy() - { - delete _instance; - _instance = nullptr; - } - - protected: - /// - /// Singleton constructor. - /// - Singleton() - { - // Check singleton. - if (_instance) - throw Exception("This is a singleton."); - }; - - /// - /// Singleton destructor. - /// - virtual ~Singleton() {}; - - /// - /// Singleton instance. - /// - static T* _instance; - - private: - /// - /// Singleton copy constructor. - /// - /// @param singleton Singleton of class. - /// - Singleton(const Singleton& singleton); - - /// - /// Singleton assignment. - /// - /// @param singleton Singleton of class. - /// - Singleton& operator = (const Singleton& singleton); - - }; - - /// - /// Singleton instance. - /// - template<class T> - T* Singleton<T>::_instance = nullptr; - -} // namespace JinEngine - -#endif // __JE_SINGLETON_H__
\ No newline at end of file |