您的位置:首页 > 编程语言 > C语言/C++

c++ 适配器模式(adapter)

2013-12-16 16:08 417 查看
当两个系统的接口不一样时,我们就要重新封装一下接口,以便于当前系统的调用。这种模式叫做适配器模式。适配器模式分为两种:

1.对象组合适配器(Object Adapter)



2.类适配器(Class Adapter)采用类继承的方式实现。



下面是对象适配器的使用。

#include <iostream>
#include <string>

using namespace std;

class CCnOutlet
{
public:
virtual ~CCnOutlet()
{

};
virtual void Cnplug()
{
//cout << "中式插座!" << endl;
};
};

class CEnOutlet
{
public:
void EnPlug()
{
cout<<"use en plug" << endl;
}
};

class CCnOutletAdapter : public CCnOutlet
{
public:
CCnOutletAdapter(CEnOutlet* pEnOutlet):m_pEnOutlet(pEnOutlet) {};
virtual ~CCnOutletAdapter() {};
virtual void Cnplug()
{
cout << "adapter transfer" << endl;
m_pEnOutlet->EnPlug();
}

private:
CEnOutlet* m_pEnOutlet;
};

int main()
{
CEnOutlet *pEnOutlet = new CEnOutlet;
CCnOutlet *pCnOutlet = new CCnOutletAdapter(pEnOutlet);
pCnOutlet->Cnplug();

delete pEnOutlet;
delete pCnOutlet;

system("pause");
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: