适配器模式
定义:适配器模式将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
适配器类中聚合自定义类的对象。
#include <iostream>
#include <string>
#include <list>
using namespace std;
class Current18V
{
public:
virtual void useCurrent18V() = 0;
};
class Current220V
{
public:
void useCurrent120V()
{
cout << "I am 120V" << endl;
}
};
//主流程操作对象
class Adapter : public Current18V
{
public:
Adapter(Current220V* current)
{
m_current = current;
}
virtual void useCurrent18V()
{
m_current->useCurrent120V();
}
private:
Current220V* m_current; //聚合方式包含要适配的类型
};
int main()
{
Current220V *current220 = new Current220V;
Adapter *adapter = new Adapter(current220);
adapter->useCurrent18V();
delete current220;
delete adapter;
return system("pause");
}