摘要: 这篇文章主要介绍了C++设计模式之原型模式,本文讲解了什么是原型模式、为什么要使用原型模式、代码实例等内容,需要的朋友可以参考下 这篇文章主要介绍了C++设计模式之原型模式,本文讲解了什么是原型模式、为什么要使用原型模式、代码实例等内容,需要的朋友可以参考下 什么是原型模式? 在GOF的《设计模式: 阅读全文
posted @ 2016-04-12 15:49 ~小小鸟~ 阅读(279) 评论(0) 推荐(0) 编辑
摘要: 目的 创建型模式 Creational Pattern 结构型模式 Structural Patterns 行为型模式 Behavioral Pattern 概念 创建型模式,就是创建对象的模式,抽象了实例化的过程。它帮助一个系统独立于如何创建、组合和表示它的那些对象。关注的是对象的创建,创建型模式 阅读全文
posted @ 2016-04-12 14:43 ~小小鸟~ 阅读(656) 评论(0) 推荐(0) 编辑
摘要: 工厂模式有一种非常形象的描述,建立对象的类就如一个工厂,而需要被建立的对象就是一个个产品;在工厂中加工产品,使用产品的人,不用在乎产品是如何生产出来的。从软件开发的角度来说,这样就有效的降低了模块之间的耦合。 UML类图 对于工厂模式,具体上可以分为三类: 1.简单工厂模式Simple Factor 阅读全文
posted @ 2016-04-12 11:17 ~小小鸟~ 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 另外,wince 下不支持 remove(filename); 阅读全文
posted @ 2016-04-11 17:56 ~小小鸟~ 阅读(547) 评论(0) 推荐(0) 编辑
摘要: 定义:客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。 问题由来:类A通过接口I依赖类B,类C通过接口I依赖类D,如果接口I对于类A和类B来说不是最小接口,则类B和类D必须去实现他们不需要的方法。 解决方案:将臃肿的接口I拆分为独立的几个接口,类A和类C分别与他们需要的 阅读全文
posted @ 2016-04-11 17:27 ~小小鸟~ 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 7种设计坏味道 1.僵化性: 很难对系统进行改动,因为每个改动都会迫使许多对系统其他部分的其它改动。 2.脆弱性: 对系统的改动会导致系统中和改动的地方在概念上无关的许多地方出现问题。 3.牢固性: 很难解开系统的纠结,使之成为一些可在其他系统中重用的组件。 4.粘滞性: 做正确的事情比做错误的事情 阅读全文
posted @ 2016-04-11 16:14 ~小小鸟~ 阅读(2456) 评论(0) 推荐(0) 编辑
摘要: 组合/聚合复用原则(Composite/Aggregate Reuse Principle CARP).组合和聚合都是对象建模中关联(Association)关系的一种.聚合表示整体与部分的关系,表示“含有”,整体由部分组合而成,部分可以脱离整体作为一个独立的个体存在。组合则是一种更强的聚合,部分组 阅读全文
posted @ 2016-04-11 15:03 ~小小鸟~ 阅读(1103) 评论(0) 推荐(0) 编辑
摘要: 1、VB里面求幂的运算符是“^” 2、C++没有求幂的运算符, c++头文件加 #include<math.h>使用pow(x,y),可算出x的y次幂 3、C++中 “^”是按位“异或”运算符。 阅读全文
posted @ 2016-04-09 13:26 ~小小鸟~ 阅读(31492) 评论(0) 推荐(1) 编辑
摘要: 定义:一个对象应该对其他对象保持最少的了解。迪米特法则(Law of Demeter)又叫作最少知识原则(Least Knowledge Principle 简写LKP),就是说一个对象应当对其他对象有尽可能少的了解,不和陌生人说话。英文简写为: LoD. 目的:迪米特法则的初衷在于降低类之间的耦合 阅读全文
posted @ 2016-03-30 18:12 ~小小鸟~ 阅读(371) 评论(0) 推荐(0) 编辑
摘要: 二分查找算法是在有序数组中用到的较为频繁的一种算法,在未接触二分查找算法时,最通用的一种做法是,对数组进行遍历,跟每个元素进行比较,其时间为O(n).但二分查找算法则更优,因为其查找时间为O(lgn),譬如数组{1, 2, 3, 4, 5, 6, 7, 8, 9},查找元素6,用二分查找的算法执行的 阅读全文
posted @ 2016-03-28 19:33 ~小小鸟~ 阅读(207) 评论(0) 推荐(0) 编辑