Qt C++ 单体模式

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 17:12   1188   0

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();
}


分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP