摘要: 使用组合模式可以使容器和内容具有一致性,可以将多个对象结合到一起,当成一个对象对待。 这里考虑文件和文件夹两个类,文件和文件夹都可以放在文件夹类中,因此定义一个虚接口CEntry,对文件夹和文件进行统一处理。 接口类: 文件类: 文件夹类: 将文件放入文件夹中,而两者都继承至同一个虚接口就实现了多个 阅读全文
posted @ 2019-05-12 10:09 Li_Quid 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 观察者模式用于一对多的情况,当观察对象发生变化时,会通知所有观察者,在实际中应用非常广泛,但是会增加类间的耦合性,使用前需考虑慎重。 观察者虚接口: 实际观察者: 被观察者: 示例代码: 阅读全文
posted @ 2019-04-01 22:50 Li_Quid 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 这次要实现的是单件模式,这里采用宏定义进行简单实现,直接贴代码。 实际的单例需要注意讲构造函数声明为private。 阅读全文
posted @ 2019-04-01 22:17 Li_Quid 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 桥接模式主要描述了类的功能层次结构和类的实现层次的分离,其中主要体现了一个委托的概念。 废话不多说,直接放代码了。 1、首先是类的功能层次 接下来是类的实现层次: 接口类: 最后是用户的使用: 在这里,遇到的问题在于countDisplay对象中具体实现成员的指针为空,但经过调试明明已经进行了赋值, 阅读全文
posted @ 2019-03-31 22:10 Li_Quid 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 最近在项目中,经常用到使用对方提供框架,由自己提供动态库实现的形式,找个空闲的时间讲大概的流程阐述出来,一是为近期的工作总结,二是想获得大家的一些批评和指正。 1、外单位提供了一个程序的基础框架,其中实现应该相当复杂,我这里只能做一个大概的猜测。 主程序如下,调用了其自身的主动态库: 采用单件和观察 阅读全文
posted @ 2019-03-30 23:44 Li_Quid 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 这是由于Qt工程被移动了路径所致,方案可以在vs工具栏和解决方案中同时选择一下"Qt版本"选项解决。 阅读全文
posted @ 2019-03-30 18:57 Li_Quid 阅读(917) 评论(0) 推荐(0) 编辑
摘要: 最近在项目中遇到了问题,编译器提示“检测到"_ITERATOR_DEBUG_LEVEL"的不匹配项”,上网查找后发现是编译Release版本用到了DEBUG库的原因,其中也提供了在预编译中加入"_ITERATOR_DEBUG_LEVEL=0"的方法,这样项目的确可以保证编译链接成功,但却可能导致一些 阅读全文
posted @ 2019-03-30 18:54 Li_Quid 阅读(771) 评论(0) 推荐(0) 编辑