自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

大冰的小屋

谁的青春不苦逼,谁的未来是确定,努力吧,少年!

  • 博客(9)
  • 资源 (1)
  • 收藏
  • 关注

原创 类设计者的核查表----摘自C++沉思录

这些问题都没有确切的答案,关键是要提醒你思考它们,并确认你做的事情是出于有意识的决定,而不是偶然事件。1、你的类需要一个构造函数吗?2、你的数据成员是私有的吗?3、你的类需要一个无参的构造函数吗?4、是不是每个构造函数初始化所有的数据成员5、类需要析构函数吗?6、类需要一个虚析构函数吗?7、你的类需要复制构造函数吗?8、你的类需要一个赋值操作符吗?9、你的赋值操

2014-02-27 17:05:56 845

原创 享元模式

享元模式:运用共享技术有效的支持大量细粒度的对象。      享元模式可以避免大量非常相似类的开销。在程序设计中,有时需要生成大量细粒度的类实例来表示数据。如果能发现这些实例除了几个参数外基本都是相同的,有时就能够大幅度地减少需要需要实例化的类的数量。如果能把那些参数移到类实例的外面,在方法调用时将它们传递进来,就可以通过共享大幅度地减少单个实例的数目。#include #i

2014-02-27 14:18:54 685

原创 中介者模式(C++实现)

中介者模式:用一个中介对象来封装一系列的对象交互。中介者使得对象不需要显示地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。       中介者模式很容易在系统中应用,也很容易在系统中误用。当系统出现了多对多交互复杂的对象群时,不要急于使用中介者模式,而要先反思你的系统在设计上是不是合理。        优点:Mediator的出现减少了各个Colleague

2014-02-26 11:11:47 748

原创 单例模式(C++实现)

单例模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点。 #include using namespace std;class Singleton{private: static Singleton* instance; Singleton() {}public: static Singleton* GetInstance() { if( i

2014-02-25 15:26:48 647

原创 职责链模式(C++实现)

职责链模式:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这个对象连接成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。 当客户提交一个请求时,请求是沿链传递直至有一个ConcreteHandle对象负责处理它。职责链可以简化对象之间的互相连接,它们仅需保持一个指向其后继者的引用,而不需要保持它所有的候选接受者的引用。#include #

2014-02-25 11:18:44 747

原创 桥接模式(C++实现)

桥接模式:将抽象部分与它的实现部分分离,使它们都可以独立地变化。   实现系统可能有多角度分类,每一种分类都有可能变化,那么就把这种多角度分离出来,让它们独立变化,减少它们之间的耦合。 #include using namespace std;class HandsetSoft{public: virtual void Run() = 0; virtual ~Ha

2014-02-24 13:27:42 716

原创 组合模式(C++实现)

组合模式:将对象组合成树形结构以表示‘部分-整体’的层次结构。组合模式使得用户对单一对象和组合对象的使用具有一致性。      当发现需求中是体现部分与整体层次的结构时,以及希望用户可以忽略组合对象与单个对象的不同,统一的使用组合结构中的所有对象时,就应该考虑用组合模式了。#include #include #include using namespace std;

2014-02-23 17:18:35 827

原创 状态模式(C++实现)

状态模式:当一个对象的内在状态改变是允许改变其行为,这个对象看起来像是改变了其类型。状态模式主要解决的是控制一个对象状态转换的条件表达式过于复杂时的情况。     把状态的判断逻辑转移到表示不同状态的一系列类当中,可以把复杂的判断逻辑简单化。 #include using namespace std;class Work;class State{public: v

2014-02-21 20:13:23 708

原创 抽象工厂模式(C++实现)

抽象工厂模式:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。        AbstractProductA和AbstractProductB是两个抽象产品,它们有两种或多种不同的实现,而ProductA1、ProductA2和ProductB1、ProductB2就是对这两抽象产品的具体分类的实现。     在运行时刻再创建一个ConcreteFactory

2014-02-21 15:25:20 946

用C++实现数据结构中的各种算法

用c++实现的数据结构中的各种算法,有完整的实现过程

2013-09-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除