所谓类的组合是指:类中的成员数据是另一个类的对象或者是另一个类的指针或引用。通过类的组合可以在已有的抽象的基础上实现更复杂的抽象。 例如:
1、按值组合
[html] view
plaincopy
#includeiostream.h>
#includemath.h>
class Point
{
public:...
分类:
编程语言 时间:
2014-11-21 10:47:36
阅读次数:
167
1. 在A类中以B类的对象作为成员变量,称为类的组合(composition)。2. 在组合时,一般在A类的构造函数初始化列表中要初始化B类(会调用B类的一个构造函数), 如果没有初始化B类,则会调用B类中可以不传参数的构造函数。#include using namespace std;#incl....
分类:
编程语言 时间:
2014-11-13 16:26:14
阅读次数:
170
Path是连续的Segment的集合,除了 Path 的第一个Segment和最后一个Segment外,其余的Segment的起始点都是前一个Segment的终止点,即Path对象的中的Segment不能出现分离,Path可以是任意数的Segment子类的组合。
分类:
其他好文 时间:
2014-11-09 00:52:25
阅读次数:
162
装饰者模式包含两种对象:装饰者和组件【被装饰者】
装饰者模式的核心思想:
1.替代继承,动态的将责任附加到对象上
2.有效的扩展行为同时不违反开闭原则
3.有效的复用修饰者
装饰者模式的设计原则:开闭原则,多用组合少用继承,低耦合
装饰者模式的用途:
1.需要生产大量的类
2.这些类又可以原子化成数量不多的小类
3.这些小类的组合可以构成(1)的类
装饰者模式的...
分类:
其他好文 时间:
2014-11-03 17:47:02
阅读次数:
243
类的组合与继承
(1)先建立一个Point(点)类,包含数据成员x,y(坐标点);
(2)以Point为基类,派生出一个Circle(圆)类,增加数据成员(半径),基类的成员表示圆心;
(3)编写上述两类中的构造、析构函数及必要的输入输出函数
(4)定义友元函数int locate,判断点p在圆c上、圆c内或圆c外,返回值0 圆外;
(5)重载关系运算符(6种)运算符,使之能够按圆的面积...
分类:
其他好文 时间:
2014-09-17 08:57:31
阅读次数:
232
类的组合:新类中的数据成员是另一个类的对象,可称这种成员是新建类的子对象或对象成员。可以在已有的抽象的基础上实现更复杂的抽象。新类的定义格式可表述为:class X{ 类名1 成员1; 类名2 成员2; ........ 类名N 成员N; ..........};对象成员的初始化:在构造...
分类:
编程语言 时间:
2014-08-09 02:34:16
阅读次数:
298
状态模式(state pattern) 详解本文地址: http://blog.csdn.net/caroline_wendy状态模式(state pattern): 允许对象在内部状态改变时改变它的行为, 对象看起来好像修改了它的类.建立Context类, 包含多个具体状态(concrete state)类的组合, 根据状态的不同调用具体的方法, state.handle(), 包含set\ge...
分类:
其他好文 时间:
2014-07-12 23:55:20
阅读次数:
385
装载模块Haskell 中的模块是含有一组相关的函数,类型和类型类的组合。而 Haskell
进程的本质便是从主模块中引用其它模块并调用其中的函数来执行操作。这样可以把代码分成多块,只要一个模块足够的独立,它里面的函数便可以被不同的进程反复重用。这就让不同的代码各司其职,提高了代码的健壮性。Hask...
分类:
其他好文 时间:
2014-06-02 18:12:22
阅读次数:
279