zoukankan      html  css  js  c++  java
  • 设计模式桥接模式实现C++

    /*********************************
    *设计模式--桥接模式实现
    *C++语言
    *Author:WangYong
    *Blog:http://www.cnblogs.com/newwy
    ********************************/
    #include <iostream>
    using namespace std;
    
    class AbstractionImp
    {
    	public:
    	virtual ~AbstractionImp(){}
    	virtual void Operation() = 0;
    	AbstractionImp(){}
    }; 
    void AbstractionImp::Operation(){cout<<"AbstractImp ... imp"<<endl;}
    
    class Abstraction
    {
    	public:
    	virtual ~Abstraction(){}
    	virtual void Operation() = 0;
    	Abstraction(){}
    };
    class RefinedAbstraction:public Abstraction
    {
    	public:
    	RefinedAbstraction(AbstractionImp *imp){_imp = imp;}
    	~RefinedAbstraction(){}
    	void Operation(){_imp->Operation();}
    	private:
    	AbstractionImp *_imp;
    };
    
    class ConcreteAbstractionImpA:public AbstractionImp
    {
    	public:
    	ConcreteAbstractionImpA(){}
    	~ConcreteAbstractionImpA(){}
    	virtual void Operation(){cout<<"ConcreteAbstractorImpA...."<<endl;}
    };
    class ConcreteAbstractionImpB:public AbstractionImp
    {
    	public:
    	ConcreteAbstractionImpB(){}
    	~ConcreteAbstractionImpB(){}
    	virtual void Operation(){cout<<"ConcreteAbstractorImpB...."<<endl;}
    };
    int main()
    {
    	AbstractionImp *imp = new ConcreteAbstractionImpA();
    	Abstraction *abs = new RefinedAbstraction(imp);
    	abs->Operation();
    	return 0;
    }
    
    
  • 相关阅读:
    [][]
    Spark笔记04
    Spark笔记03
    Spark笔记02
    Spark笔记01
    【熟能生巧】使用Screw快速生成数据库文档
    记一次关于jdbcTemplate.queryForList快速Debug及感悟
    【从零单排】Exception实战总结1
    【从零单排】Java性能排查实战模拟
    【从零单排】关于泛型Generic的一些思考
  • 原文地址:https://www.cnblogs.com/newwy/p/1855214.html
Copyright © 2011-2022 走看看