先看定义:适配器模式将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作
有点明白,看下代码确认下
#include#include using namespace std; class MangeSystemA { public: virtual void getName() { cout << "获取系统A中员工的名称" << endl; } }; class MangeSystemB { public: virtual void getPeopleName() { cout << "获取系统B中员工的名称" << endl; } }; class AdapterSystem : public MangeSystemA { public: AdapterSystem(MangeSystemB *pSysB) :m_pSysB(pSysB){} virtual void getName() { m_pSysB->getPeopleName(); } private: MangeSystemB *m_pSysB; }; int main() { MangeSystemB *sysB = new MangeSystemB; //创建适配器 MangeSystemA *sysA = new AdapterSystem(sysB); sysA->getName(); return 0; } 结果: 获取系统B中员工的名称 请按任意键继续. . .
很清晰了,通过适配器类AdapterSystem在不修改MangeSystemA类的情况下让MangeSystemA对象调用MangeSystemB的接口。



