简述
简单工厂设计模式是一种基础简单而常用的设计模式,对理解封装、继承和多态特性有非常大的帮助。下面就来在Qt下实现简单工厂模式。
代码之路
实现简单工厂至少需要四个类。其中最主要的两个类是工厂类和一个基类,另外的类都是这个基类的继承类。下面的例子中工厂类是factory,基类是BasicClass,两个继承类分别是ClassA和ClassB。
基类BasicClass的实现如下
//basicclass.h
#include <QObject>
#include <QDebug>
class BasicClass : public QObject
{
Q_OBJECT
public:
BasicClass();
~BasicClass();
virtual void showClassName();
};
//basicclass.cpp
#include "basicclass.h"
BasicClass::BasicClass()
{
}
BasicClass::~BasicClass()
{
}
void BasicClass::showClassName()
{
qDebug() << "这是一个基类!";
}
继承类ClassA如下:
//classA.h
#include "basicclass.h"
class ClassA : public BasicClass
{
Q_OBJECT
public:
ClassA();
void showClassName();
};
//classA.cpp
#include "classa.h"
ClassA::ClassA()
{
}
void ClassA::showClassName()
{
qDebug() << "这个类是ClassA!