void LauncherPrivate::initializeCalibrateWidget()
{
}
QString LauncherPrivate::getEnv(const QString &key)
{
}
void LauncherPrivate::setEnv(const QString &type, const char value)
{
}
//@九江在天 :launcher.cpp
#include "launcher.h"
class LauncherPrivate {
public:
explicit LauncherPrivate(Launcher* parent);
~LauncherPrivate();
void initializeParent();
void initializeCalibrateWidget();
QString getEnv(const QString &key);
void setEnv(const QString &type, const char value);
private:
Q_DECLARE_PUBLIC(Launcher)
Launcher* const q_ptr;
unsigned char m_HandShakeTimerFlag;
};
Launcher::Launcher(QObject *parent) : QObject(parent), d_ptr(new LauncherPrivate(this))
{
}
Launcher::~Launcher()
{
if (NULL != d_ptr) {
delete d_ptr;
}
}
void Launcher::onStartComplete()
{
Q_D(Launcher);
d->initializeCalibrateWidget();
}
LauncherPrivate::LauncherPrivate(Launcher *parent):q_ptr(parent)
{
}
LauncherPrivate::~LauncherPrivate()
{
}
void LauncherPrivate::initializeParent()
{
Q_Q(Launcher);
q->onStartComplete();
}
@九江在天:今天学到关于Qt的几个关键词:Q_DISABLE_COPY(Bluetooth),friend ,
Q_DECLARE_PRIVATE(Bluetooth) Q_Q,
Q_DECLARE_PUBLIC(Bluetooth) Q_D,个人觉得这个用法非常好,有这么一个项目,全部都是以这种方式做的,pimpl的方式。代码如下:
launcher.h
#include <QObject>
class LauncherPrivate;
class Launcher : public QObject
{
Q_OBJECT
Q_DISABLE_COPY(Launcher)
public:
explicit Launcher(QObject *parent = nullptr);
~Launcher();
private:
LauncherPrivate* const d_ptr;
Q_DECLARE_PRIVATE(Launcher)
public slots:
void onStartComplete();
signals:
};
- 复制链接
- 举报