chore: 格式化ElaWidgetTools代码
This commit is contained in:
@@ -3,54 +3,44 @@
|
||||
|
||||
#include <QMutex>
|
||||
|
||||
template <typename T>
|
||||
class Singleton
|
||||
{
|
||||
template <typename T> class Singleton {
|
||||
public:
|
||||
static T* getInstance();
|
||||
static T *getInstance();
|
||||
|
||||
private:
|
||||
Q_DISABLE_COPY(Singleton)
|
||||
};
|
||||
|
||||
template <typename T>
|
||||
T* Singleton<T>::getInstance()
|
||||
{
|
||||
template <typename T> T *Singleton<T>::getInstance() {
|
||||
static QMutex mutex;
|
||||
QMutexLocker locker(&mutex);
|
||||
static T* instance = nullptr;
|
||||
if (instance == nullptr)
|
||||
{
|
||||
QMutexLocker locker(&mutex);
|
||||
static T *instance = nullptr;
|
||||
if (instance == nullptr) {
|
||||
instance = new T();
|
||||
}
|
||||
return instance;
|
||||
}
|
||||
|
||||
#define Q_SINGLETON_CREATE(Class) \
|
||||
private: \
|
||||
friend class Singleton<Class>; \
|
||||
\
|
||||
public: \
|
||||
static Class* getInstance() \
|
||||
{ \
|
||||
return Singleton<Class>::getInstance(); \
|
||||
}
|
||||
#define Q_SINGLETON_CREATE(Class) \
|
||||
private: \
|
||||
friend class Singleton<Class>; \
|
||||
\
|
||||
public: \
|
||||
static Class *getInstance() { return Singleton<Class>::getInstance(); }
|
||||
|
||||
#define Q_SINGLETON_CREATE_H(Class) \
|
||||
private: \
|
||||
static Class* _instance; \
|
||||
static Class *_instance; \
|
||||
\
|
||||
public: \
|
||||
static Class* getInstance();
|
||||
static Class *getInstance();
|
||||
|
||||
#define Q_SINGLETON_CREATE_CPP(Class) \
|
||||
Class* Class::_instance = nullptr; \
|
||||
Class* Class::getInstance() \
|
||||
{ \
|
||||
Class *Class::_instance = nullptr; \
|
||||
Class *Class::getInstance() { \
|
||||
static QMutex mutex; \
|
||||
QMutexLocker locker(&mutex); \
|
||||
if (_instance == nullptr) \
|
||||
{ \
|
||||
QMutexLocker locker(&mutex); \
|
||||
if (_instance == nullptr) { \
|
||||
_instance = new Class(); \
|
||||
} \
|
||||
return _instance; \
|
||||
|
||||
Reference in New Issue
Block a user