定义:适配器模式是一种结构型设计模式,他主要是将一个类接口转换成客户端希望的另一个类接口。该设计模式较为简单,但是却很常用。
?
#include<iostream>
#include<string>
using namespace std;
class InterfaceA
{
public:
virtual void FuncA()
{
cout << "InterFaceA Method: FuncA" << endl;
}
};
class InterfaceB
{
public:
virtual void FuncB()
{
cout << "InterFaceB Method: FuncB" << endl;
}
};
class Adapter :public InterfaceA
{
public:
Adapter(InterfaceB * pIB) :_pB(pIB) {}
void FuncA()
{
_pB->FuncB();
}
private:
InterfaceB *_pB;
};
int main()
{
InterfaceB *pTempB = new InterfaceB();
InterfaceA *pTempA = new Adapter(pTempB);
pTempA->FuncA();
system("pause");
return 0;
}
?总结:如上图所示,客户端调用的是接口A的方法A,但是实际执行的是接口B的方法B。适配器模式适用于已存在某一功能类,但是接口不符合要求的情况。可以通过适配器模式将现有的接口方法转为客户端期望的方法。
|