bridge pattern的c++代码样例与分析
来源:互联网 发布:江苏飚风软件 编辑:程序博客网 时间:2024/05/15 23:43
(@转载请注明出处:http://blog.csdn.net/cmatch)
因为互联网上大部分讲解模式程序样例都是用java等语言描述的,为了方便c++爱好者便于学习,我将使用c++来讲解模式。
bridge模式,程序样例,如下:
#include <iostream>
using namespace std;
class Imp {
public:
virtual void operation() = 0;
};
class ImpA: public Imp {
public:
void operation() {
cout << "A from Imp" << endl;
}
};
class ImpB: public Imp {
public:
void operation() {
cout << "B from Imp" << endl;
}
};
class A {
public:
virtual void print() {}
A(Imp * imp): imp(imp) {}
A(): imp(NULL) {}
void setTool(Imp *imp) {
this->imp = imp;
}
protected:
Imp * imp;
};
class A1: public A {
public:
A1():A() {}
A1(Imp *imp):A(imp) {}
void print() {
cout << "come from A1" << endl;
imp->operation();
}
};
class A2: public A {
public:
A2():A() {}
A2(Imp *imp):A(imp) {}
void print() {
//something to do
cout << "come from A2" << endl;
imp->operation();
}
};
int main () {
Imp *b = new ImpA;
A *a = new A1;
a->setTool(b);
a->print();
delete b;
b = new ImpB;
a->setTool(b);
a->print();
delete b;
delete a;
A1 objA(new ImpA);
objA.print();
A1 objB(new ImpB);
objB.print();
return 0;
}
分析如下:
(待续)
- bridge pattern的c++代码样例与分析
- Design Pattern - Bridge(C#)
- Bridge pattern设计模式 蜡笔与毛笔的故事
- Bridge Pattern
- Bridge pattern
- Bridge Pattern
- Bridge Pattern
- Bridge Pattern
- Bridge Pattern
- Bridge Pattern
- Bridge Pattern
- Java与模式 桥梁模式Bridge Pattern
- 设计模式拾荒之桥接模式( Bridge Pattern ): 可以变化的抽象类与接口
- 乐在其中设计模式(C#) - 桥接模式(Bridge Pattern)
- SCIM Bridge Client端代码分析
- Design Pattern 14-bridge
- Bridge Pattern(桥模式)
- The Bridge Pattern
- Java程序员必须要了解的七个开源协议介绍
- IE 下Google Map 无法显示,报 GMap2 没有定义
- ASP.NET开发中的八个最佳实践
- 存储过程简介
- 事件Event:简单的线程同步
- bridge pattern的c++代码样例与分析
- asp伪静态化/asp静态化/ASPURL重写/IIS Rewrite/RewriteRule/
- 日记2008.9.21
- 常量
- BigDecimal 的使用
- 用CREATE PROCEDURE 命令创建存储过程
- 世界最著名大学教育资源
- c循环队列
- PLSQL的书写及语法