适配器模式(Adapter)将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的哪些类可以一起工作。
//Adapter.h
#ifndef _ADAPTER_H_
#define _ADAPTER_H_
#include <iostream>
using namespace std;
class Adaptee;
class Tatget
{
public:
virtual void Request()
{
cout<<"common request..."<<endl;
}
};
class Adapter:public Tatget
{
public:
Adapter()
{
_ape = new Adaptee();
}
void Request()
{
_ape->SpecificRequest();
}
private:
Adaptee* _ape;
};
#endif
//Adaptee.h
#ifndef _ADAPTEE_H_
#define _ADAPTEE_H_
#include <iostream>
using namespace std;
class Adaptee
{
public:
void SpecificRequest()
{
cout<<"Specific Request..."<<endl;
}
};
#endif
//main.cpp
#include "Adaptee.h"
#include "Adapter.h"
int main()
{
Tatget* tg = new Adapter();
tg->Request();
return 0;
}