博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2011年11月13日

摘要: 定义:策略模式定义了算法族,分别封装起来,让他们之间可以相互替换,此模式让算法的变化独立于使用算法的客户。场景:鸭子种类繁多,有野鸭子、橡皮鸭、诱饵鸭,他们有的会飞,有的不会飞,有的会吱吱叫,有的会呱呱叫,有的还不会叫。其中的飞行行为和呱呱叫行为就可以当做算法族封装起来,这样鸭子的飞行行为或呱呱叫行为就可以相互替换了,如果鸭子翅膀受伤了,我们就可以改变鸭子的飞行行为,让其不会飞。类图:c++代码如下:#include <iostream>using namespace std;class FlyBehavior{public: virtual void fly() = 0;};cl 阅读全文

posted @ 2011-11-13 17:25 开源云 阅读(562) 评论(0) 推荐(0) 编辑

摘要: 在c++开发过程中,内存泄漏是令程序员最苦恼的事情,有时为了找到一个内存泄漏的地方,要调试很长时间。重载new操作符,往往是很多大型项目常用的防内存泄漏的手段。本人闲来无事,写了个new操作符重载的函数,大家互相学习,有不足之处还望大家给予指正。上代码,就不做过多的解释啦。 1 #ifndef _BASE_H_ 2 #define _BASE_H_ 3 4 #include <stdio.h> 5 #include <stdlib.h> 6 #include <map> 7 using namespace std; 8 9 typedef struct { 阅读全文

posted @ 2011-11-13 16:01 开源云 阅读(2441) 评论(1) 推荐(1) 编辑