摘要:
结构型模式-bridge设计模式bridge模式实现类图如下:在如上类图中,refinedAbstraction类代表了windows操作系统,该类中维护了一个指向abstractImplement的指针,这样就可以自由的调用下面的具体的方法了。如果用户突然想给windows系统增加一个计算器功能,这样我们就只需要给abstractimplement添加一个子类实现计算器的功能就行。如果用户突然又想,实现mac操作系统,这样我们只需在abstract中添加一个mac的子类,这样mac类中就可以通过一个指向abstractimplement的指针实现上面的功能。以上是我的理解。参考代码:(来自h 阅读全文
摘要:
Prototype模式提供了自我复制的功能,就是说新对象的创建可以通过已有对象进行创建。prototype设计模式不止一个clone方法那么简单,而是为对象的创建提供了统一的clone接口,允许客户代码在不知道对象的具体类型的情况下进行创建。其中拷贝构造函数的原型为: 类名 (const 已存在对象的引用),默认的拷贝构造函数为浅复制,即按位拷贝。如果类中存在指针,组合对象等成员变量是,就不能简单的按位拷贝了,必须自己实现拷贝构造函数,在函数中先为新的对象分配内存,在拷贝值。下面是k_eckel书中的代码片段,其中类里面没有成员变量,只是简单的采用了浅复制。如果是要深复制,要如下这样,代码来自 阅读全文