类/对象结构型模式——适配器模式(Apapter)

来源:互联网 发布:淘宝刷好评兼职交会费 编辑:程序博客网 时间:2024/05/29 13:14

  一、功能

    将一个类的接口转换成客户希望的另外一个接口,解决两个已有接口之间不匹配的问题。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。

    二、结构图

    (1)class adapter

 

    (2)object adapter


#include <iostream>using namespace std;class Target{public :Target() {}virtual void Request()=0;};class Adaptee{public:Adaptee() {}void SpecialRequset(){cout<<"SpecialRequset of Adaptee"<<endl;}};class Adapter_class:private Adaptee,public Target{public:Adapter_class(){}void Request(){SpecialRequset();}};class Adpater_object:public Target{public:Adpater_object(Adaptee* m_p):m_pAdaptee(m_p){}void Request(){m_pAdaptee->SpecialRequset();}private:Adaptee* m_pAdaptee;};int main(){   //Client1Target *t=new Adapter_class();t->Request();//Client2Adaptee *p=new Adaptee();Target *t1=new Adpater_object(p);t1->Request();return 0;}