C++11单例模式
#pragma once
#include <qobject.h>
#include <QDebug>
class SingletonClass :public QObject
{
public:
static SingletonClass* getInstance();
static void fun();
double a = 1.0;
private:
SingletonClass() :QObject(nullptr) {};//禁止构造函数。
SingletonClass(const SingletonClass &) {};//禁止拷贝构造函数。
SingletonClass & operator=(const SingletonClass &) {};//禁止赋值拷贝函数。
};
SingletonClass* SingletonClass::getInstance()
{
static SingletonClass instance;
return &instance;
}
void SingletonClass::fun()
{
qDebug()<<SingletonClass::getInstance()->a;
}