结构型模式 适配器模式
适用于: 是将一个类的接口转换成客户希望的另外一个接口。使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
/** * 结构型模式 适配器模式 * Adapter模式也叫适配器模式,是构造型模式之一,通过Adapter模式可以改变已有类(或外部类)的接口形式。 * 通过一种对客户端透明的方式来扩展对象的功能,是继承关系的一个替换方案。 * 装饰模式就是把要添加的附加功能分别放在单独的类中,并让这个类包含它要装饰的对象,当需要执行时,客户端就可以有选择地、按顺序地使用装饰功能包装对象。 * */ #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <string> class Current18v { public: void use18vCurrent() { std::cout << "使用18V的交流电" << std::endl; } }; class Current220v { public: void use220vCurrent() { std::cout << "使用220V的交流电" << std::endl; } }; class Adapter: public Current18v { public: Adapter(Current220v *p220v) { m_p220v = p220v; } void use18vCurrent() { std::cout << "adapter 中使用交流电" << std::endl; m_p220v->use220vCurrent(); } private: Current220v *m_p220v; }; void mytest() { Current220v *p220v = new Current220v(); Adapter *padapter = new Adapter(p220v); padapter->use18vCurrent(); delete p220v; p220v = nullptr; delete padapter; padapter = nullptr; return; } int main() { mytest(); system("pause"); return 0; }