c++ 结构型模式-适配器(Adapter)
1) 意图: 将一个类的接口转换成客户希望的另一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作 2) 结构: 适配器两种结构,一种继承实现,一种组合实现 a. 继承方式: b. 组合方式: 其中: Target 定义 Client 使用的与特定领域相关的接口 Client 与符合 Target 接口的对象协同 Adaptee 定义一个已经存在的接口,这个接口需要适配 Adapter 对 Adaptee 的接口与 Target 接口进行适配 3) 适用性: 想使用一个类,但是它的接口不符合要求 想创建一个可以用的类,该类可以和其他不相关的类或不可预见的类协同工作 想使用一个已经存在的子类,但是不可能对每一个都进行子类化以匹配它们的接口 4) 举例: a. 继承方式: 1 #include <iostream> 2 class Target 3 { 4 public: 5 Target() {} 6 virtual ~Target() {} 7 virtual std::string Request() = 0; 8 }; 9 10 class Adaptee 11 { 12 public: 13 Adaptee() {} 14 virtual ~Adaptee() {} 15 void SpecificRequest(std: