项目中的设计模式
2015-08-07 21:46
155 查看
一、单例模式
由于我们只需要初始化一个大的窗口,为了防止以后多次创建,在项目中把窗口类设计为一个单例的。
源代码(与项目无关):
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发生变化时,有可能是连接成功,有数据到达,有数据可读等等,相应的子线程对到来的数据和状态进行处理。
由于我们只需要初始化一个大的窗口,为了防止以后多次创建,在项目中把窗口类设计为一个单例的。
源代码(与项目无关):
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发生变化时,有可能是连接成功,有数据到达,有数据可读等等,相应的子线程对到来的数据和状态进行处理。
相关文章推荐
- CodeForces 567E President and Roads(最短路 + tarjan求桥)
- 个人对单例模式和观察者模式及事件的一点理解
- CF 91E
- Unity3D技术之优化图形性能绘制调用批处理浅析
- Two Sum
- 确认对话框
- GDOI模拟8.7总结
- 飞翔
- 特效的批量绘制
- 使用栈计算后缀表达式
- 杭电ACM1302——The Snail
- Android系统Burpsuit实现抓https数据包
- Spring先进的交易管理困难剖析
- 安装并配置sonar
- HDU 4281 Judges' response(状压DP)
- 欧几里德算法
- gdb 多线程调试 http://www.cnblogs.com/xuxm2007/archive/2011/04/01/2002162.html
- 《JavaScript》——面向对象之继承
- JavaScript的简单复习
- #每日Linux小练习#04 find指令