SinglePara.h
#ifndef SINGLEPARA_H
#define SINGLEPARA_H
#include <QtGui>
class SinglePara
{
public:
static SinglePara* getSinglePara();
public:
SinglePara();
static SinglePara *singles;
};
#endif // SINGLEPARA_H
SinglePara.cpp
#include "SinglePara.h"
SinglePara *SinglePara::singles = 0;
SinglePara::SinglePara()
{
}
//用来返回单例类的对象
SinglePara* SinglePara::getSinglePara()
{
//if(single == 0)
if(singles == NULL)
{
singles = new SinglePara();
}
return singles;
}
main.cpp
#include <QDebug>
//引用单例类
#include "SinglePara.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
...
//实现
//其他地方调用也是得到相同的地址
SinglePara *sin = SinglePara::getSinglePara();
//打印结果:如:0x54c068
//每次运行的地址是不一样的
qDebug()<<sin->singles;
...
return a.exec();
}