码迷,mamicode.com
首页 > 其他好文 > 详细

适配器模式

时间:2014-09-01 18:00:43      阅读:210      评论:0      收藏:0      [点我收藏+]

标签:style   color   os   io   ar   for   art   sp   on   

适配器模式:

将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。

适用场景:

复用现有的类,但接口却不相同。


#include <iostream>

using namespace std;

class Target {
  public:
    virtual void Request() {}
};

class Adaptee {
  public:
    void SourceRequest() {
      cout<< "SourceRequest" << endl;
    }
};

class Adapter : public Adaptee, public Target {
  public:
    void Request() {
      this->SourceRequest();
    }
};



class AdapterI : public Target {
  public:
    AdapterI() {
      adapter_ = new Adaptee();
    }
    virtual ~AdapterI() {
      if (adapter_) {
        delete adapter_;
      }
      adapter_ = NULL;
    }
  private:
    Adaptee* adapter_;
  public:
    void Request() {
      adapter_->SourceRequest();
    }
};
#include "main.h"

int main(int argc, char* argv[]) {
  Target* t = new Adapter();
  t->Request(); 
  Target* t2 = new AdapterI();
  t2->Request(); 
}

适配器模式

标签:style   color   os   io   ar   for   art   sp   on   

原文地址:http://my.oschina.net/hejiula/blog/308770

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!