Qt C++ 单体模式

来源:互联网 发布:sja1000数据手册 编辑:程序博客网 时间:2024/05/08 16:27

singleton.h

#pragma once


#include <QDebug>


class CSingleTon
{
public:
static CSingleTon* instance();
static void releaseInstance();


QString getName() const;


QString getAge() const;


bool getJJ() const;


protected:
CSingleTon();


};


singleton.cpp

#include "singleton.h"


CSingleTon* CSingleTon::instance()
{
static CSingleTon* _instance = 0;
if (!_instance)
{
_instance = new CSingleTon;
}
return _instance;
}


void CSingleTon::releaseInstance()
{
CSingleTon* _instance = instance();
if (_instance)
{
delete _instance;
}
}


CSingleTon::CSingleTon()
{


}


QString CSingleTon::getName() const
{
return "Lili";
}


QString CSingleTon::getAge() const
{
return "23";
}


bool CSingleTon::getJJ() const
{
return false;
}


main.cpp

#include <QApplication>
#include "singleton.h"


int main(int argc,char **argv)
{
QApplication app(argc,argv);

QString name = CSingleTon::instance()->getName();
QString age = CSingleTon::instance()->getAge();
bool bjj = CSingleTon::instance()->getJJ();
CSingleTon::releaseInstance();
return app.exec();
}


原创粉丝点击