【设计模式】之十三Bridge
来源:互联网 发布:清理系统盘的软件 编辑:程序博客网 时间:2024/05/21 22:01
Type: Structural
Bridge: 将抽象与其实现解耦,这样两者可以独立地变化。
#include <iostream>using namespace std;class Implementor{public: virtual void operationImpl() = 0;};class ConcreteImplementorA: public Implementor{public: void operationImpl() { cout<<"ConcreteImplementorA operationImpl"<<endl; };};class ConcreteImplementorB: public Implementor{public: void operationImpl() { cout<<"ConcreteImplementorB operationImpl"<<endl; };};class Abstraction{public: void setImplementor(Implementor* pImplementor) { m_pImplementor = pImplementor; }; void operation() { if(m_pImplementor != NULL) m_pImplementor->operationImpl(); };private: Implementor* m_pImplementor;};int main(){ ConcreteImplementorA *pImplA = new ConcreteImplementorA(); ConcreteImplementorB *pImplB = new ConcreteImplementorB(); Abstraction *pAbstraction = new Abstraction; pAbstraction->setImplementor(pImplA); pAbstraction->operation(); pAbstraction->setImplementor(pImplB); pAbstraction->operation(); system("pause"); return 0;}
- 【设计模式】之十三Bridge
- 设计模式之Bridge
- 设计模式之Bridge
- 设计模式之Bridge
- 设计模式之Bridge
- 设计模式之Bridge
- 设计模式之Bridge
- 设计模式之Bridge
- 设计模式之--Bridge
- 设计模式之Bridge
- 设计模式之Bridge
- 设计模式之Bridge
- 设计模式之-----Bridge
- 设计模式之 bridge
- 设计模式之Bridge
- 设计模式之Bridge
- 设计模式之Bridge
- 设计模式之Bridge
- IOS中arc的基础知识
- Androidpn:持久类PersistentConnectionListener找不到
- c++ Sqlite 简单使用-查询
- iOS中UITextField 使用全面解析
- Make your .Net application support scripting - a practical approach
- 【设计模式】之十三Bridge
- discuz7.0升级到discuzX2.0
- git常用操作
- 获得某个月的天数(java,oracle,mysql)
- 高性能网络I/O框架-netmap源码分析(1)
- hdu 2491 pingpong
- 解决:IE6下,div被下拉框所遮挡的问题
- js中apply方法的使用
- Unit Testing All-in-One