项目中的设计模式

一、单例模式

由于我们只需要初始化一个大的窗口,为了防止以后多次创建,在项目中把窗口类设计为一个单例的。

源代码(与项目无关):

class SingleObject

{

  public:

  static  SingleObject * getInstance()

{

if(instance==null)

    instance=new SingleObject();

return instance;

}

private:

static SingleObject *instance;

SingleObject();

}

SingleObject * SingleObject::instance=null;

二、工厂模式

在项目中,我们需要根据选项去创建一些类,通过选择不同的选项,在程序中通过switch语句,动态的创建不同的类,满足不同的条件。


三、观察者模式


在项目中,我们通过Qt的信号槽机制,将主线程下tcpsocket的状态,绑定给不同的子线程进行处理,当tcpSocket发生变化时,有可能是连接成功,有数据到达,有数据可读等等,相应的子线程对到来的数据和状态进行处理。




你可能感兴趣的:(项目中的设计模式)