www.cryfeifei.cn
摘要: 公众号:Qt那些事儿 简介 QFileSystemWatcher的作用是监视本地文件夹的变化以及文件的变化。 概述 QFileSystemWatcher的实现类是QFileSystemWatcherPrivate。 其中QFileSystemWatcherPrivate中的关键成员变量QFileSy 阅读全文
posted @ 2020-09-19 19:47 cryfeifei 阅读(745) 评论(0) 推荐(0)
摘要: 解决的问题: 在系统里a,b,c三个组件必须同时使用,但是a的同类 a1和a2这三种方法有共同特点但是是互斥的,b,b1,b2和c,c1,c2和a/a1/a2是一样的。就比如说创建在不同操作系统的视窗环境下都能够运行的系统时,Unix下面有unixButton和 unixText,Win下面也有winButton和winText,unixButton和unixText必须在一个系统unix里面用... 阅读全文
posted @ 2018-06-28 13:25 cryfeifei 阅读(136) 评论(0) 推荐(0)
摘要: 简单工厂模式按照设计模式类型分的话是属于创建型模式,他是工厂模式中最简单的一种,他不属于GoF 23中设计模式之一,但是是简单实用的。他是有一个工厂对象来决定创建哪一种对象的实例。 实现比较简单,这里我只贴出类图和调用方法: 调用方法: IProduct * simpleFactory::Create(std::string className) { if( class... 阅读全文
posted @ 2018-06-28 13:24 cryfeifei 阅读(120) 评论(0) 推荐(0)
摘要: 解决方案 工厂方法模式不同于简单工厂模式的地方在于工厂方法模式把对象的创建过程放到里子类里。这样工厂父对象和产品父对象一样,可以是抽象类或者接口,只定义相应的规范或操作,不涉及具体的创建或实现细节。 其类图如下: 实例代码为: ``` #pragma once class IProduct { public: IProduct(void); virtua... 阅读全文
posted @ 2018-06-28 13:23 cryfeifei 阅读(97) 评论(0) 推荐(0)
摘要: 单例模式,顾名思义,就是只能由一个实例,那么我们就必须保证 该类不能被复制。 该类不能被公开的创造。 那么对于C++来说,他的构造函数,拷贝构造函数和他的赋值函数都不能被公开调用。 但对于该私有的构造函数的构造时机上来说也可以分两种情况来构造: 只有当需要改类的时候去构造(即为懒汉模式) 在程序开始之前我就先构造好,你到时候直接用就可(即为饿汉模式) 那么我分别来说说这两种模式:... 阅读全文
posted @ 2018-06-28 13:19 cryfeifei 阅读(107) 评论(0) 推荐(0)
摘要: 桥模式,其作用就是让抽象与实现相分离,让两者都能够各自变化。 举例来说吧,画图,我可以画矩形,圆,三角形等等,在哪里画呢?我可以在pdf上画,也可以在doc上面画。画什么图和在哪里画都是可以独立变化的,此种情况就比较适合用桥模式。就是说设计中有超过一维的变化我们就可以用桥模式。如果只有一维在变化,那么我们用继承就可以圆满的解决问题。 我的图形定义: #pragma once #include... 阅读全文
posted @ 2018-06-28 13:12 cryfeifei 阅读(919) 评论(0) 推荐(0)