1.适配器模式简介
适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。
2.源码实现
#include <iostream>
#include <string>
using namespace std;
class CCnOutlet
{
public:
virtual ~CCnOutlet()
{
}
virtual void Cnplug()
{
cout << "中式插座!" << endl;
}
};
class CEnOutlet
{
public:
virtual ~CEnOutlet()
{
}
virtual void Enplug()
{
cout << "英式插座!" << endl;
}
};
class CCnOutletAdapter : public CCnOutlet
{
public:
CCnOutletAdapter(CEnOutlet *pEnOutlet) : m_pEnOutlet(pEnOutlet){};
virtual ~CCnOutletAdapter(){};
virtual void Cnplug()
{
m_pEnOutlet->Enplug();
cout << "适配器转换" << endl;
}
private:
CEnOutlet *m_pEnOutlet;
};
int main(int argc, char **argv)
{
CEnOutlet *pEnOutlet = new CEnOutlet;
CCnOutlet *pCnOutlet = new CCnOutletAdapter(pEnOutlet);
//英式插座适配中式插座
pCnOutlet->Cnplug();
delete pEnOutlet;
delete pCnOutlet;
return 0;
}
3.编译源码
$ g++ -o example example.cpp
4.运行及其结果
$ ./example
英式插座!
适配器转换
网友评论