- 博客(7)
- 收藏
- 关注
转载 二十三种设计模式(四)的简单实现之组合模式(Composite Pattern)
使用组合模式可以使容器和内容具有一致性,可以将多个对象结合到一起,当成一个对象对待。这里考虑文件和文件夹两个类,文件和文件夹都可以放在文件夹类中,因此定义一个虚接口CEntry,对文件夹和文件进行统一处理。接口类: 1 #pragma once 2 class CEntry 3 { 4 public: 5 CEntry(); 6 v...
2019-05-12 10:09:00
151
转载 二十三种设计模式(三)的简单实现之观察者模式(Observer Pattern)
观察者模式用于一对多的情况,当观察对象发生变化时,会通知所有观察者,在实际中应用非常广泛,但是会增加类间的耦合性,使用前需考虑慎重。观察者虚接口:1 #pragma once2 class CObserver3 {4 public:5 CObserver();6 virtual ~CObserver();7 8 virtua...
2019-04-01 22:50:00
133
转载 二十三种设计模式(二)的简单实现之单件模式(Singleton Pattern)
这次要实现的是单件模式,这里采用宏定义进行简单实现,直接贴代码。 1 #pragma once 2 #include "windows.h" 3 //单件的声明宏,放在头文件中 4 #define DECLARE_SINGLETON(CSingleton)\ 5 public:\ 6 static CSingleton* GetInstance();\...
2019-04-01 22:17:00
153
转载 二十三种设计模式(一)的简单实现之桥接模式(Bridge Pattern)
桥接模式主要描述了类的功能层次结构和类的实现层次的分离,其中主要体现了一个委托的概念。废话不多说,直接放代码了。1、首先是类的功能层次 1 #pragma once 2 #include "DisplayImpl.h" 3 class CDisplay 4 { 5 public: 6 CDisplay(CDisplayImpl* pDispla...
2019-03-31 22:10:00
120
转载 观察者方式实现动态库调用
最近在项目中,经常用到使用对方提供框架,由自己提供动态库实现的形式,找个空闲的时间讲大概的流程阐述出来,一是为近期的工作总结,二是想获得大家的一些批评和指正。1、外单位提供了一个程序的基础框架,其中实现应该相当复杂,我这里只能做一个大概的猜测。主程序如下,调用了其自身的主动态库:1 int main()2 {3 HINSTANCE hDll = LoadL...
2019-03-30 23:44:00
92
转载 编译Qt项目提示 error MSB6006: “cmd.exe”已退出
这是由于Qt工程被移动了路径所致,方案可以在vs工具栏和解决方案中同时选择一下"Qt版本"选项解决。转载于:https://www.cnblogs.com/LiQuid/p/10628502.html
2019-03-30 18:57:00
659
转载 检测到"_ITERATOR_DEBUG_LEVEL"的不匹配项
最近在项目中遇到了问题,编译器提示“检测到"_ITERATOR_DEBUG_LEVEL"的不匹配项”,上网查找后发现是编译Release版本用到了DEBUG库的原因,其中也提供了在预编译中加入"_ITERATOR_DEBUG_LEVEL=0"的方法,这样项目的确可以保证编译链接成功,但却可能导致一些后续的问题,但第三方的库却强制要求使用Release库,所以暂时提供解决方案可以在两个动态...
2019-03-30 18:54:00
484
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人