modify
This commit is contained in:
+24
-24
@@ -52,24 +52,24 @@ private:
|
||||
/// ///
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
#if 0
|
||||
//template <typename T> QMutex Singleton<T>::mutex;
|
||||
//template <typename T> QScopedPointer<T> Singleton<T>::instance;
|
||||
template <typename T> QMutex Singleton<T>::mutex;
|
||||
template <typename T> QScopedPointer<T> Singleton<T>::instance;
|
||||
|
||||
//template <typename T>
|
||||
//T& Singleton<T>::getInstance()
|
||||
//{
|
||||
// if (instance.isNull())
|
||||
// {
|
||||
// mutex.lock();
|
||||
// if (instance.isNull())
|
||||
// {
|
||||
// instance.reset(new T());
|
||||
// }
|
||||
// mutex.unlock();
|
||||
// }
|
||||
template <typename T>
|
||||
T& Singleton<T>::getInstance()
|
||||
{
|
||||
if (instance.isNull())
|
||||
{
|
||||
mutex.lock();
|
||||
if (instance.isNull())
|
||||
{
|
||||
instance.reset(new T());
|
||||
}
|
||||
mutex.unlock();
|
||||
}
|
||||
|
||||
// return *instance.data();
|
||||
//}
|
||||
return *instance.data();
|
||||
}
|
||||
#endif
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -78,14 +78,14 @@ private:
|
||||
/// ///
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
#if 0
|
||||
//#define SINGLETON(Class) \
|
||||
//private: \
|
||||
// Class(); \
|
||||
// ~Class(); \
|
||||
// Class(const Class &other); \
|
||||
// Class& operator=(const Class &other); \
|
||||
// friend class Singleton<Class>; \
|
||||
// friend struct QScopedPointerDeleter<Class>;
|
||||
#define SINGLETON(Class) \
|
||||
private: \
|
||||
Class(); \
|
||||
~Class(); \
|
||||
Class(const Class &other); \
|
||||
Class& operator=(const Class &other); \
|
||||
friend class Singleton<Class>; \
|
||||
friend struct QScopedPointerDeleter<Class>;
|
||||
#endif
|
||||
#define SINGLETON(Class) friend class Singleton<Class>
|
||||
#endif // SINGLETON_H
|
||||
|
||||
Reference in New Issue
Block a user