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