适配器模式是一种结构型设计模式, 又称为变压器模式、包装模式(Wrapper) 将一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。
Target
。在生活中存在各类适配器,交流电220V会转化为各类所需电压, 以手机适配器为例。在给手机充电 手机充电器相当于 Adapter适配器 ,220V的交流电 相当于 Adaptee 被适配者,5V的直流电 相当于 Target目标
- #include
- #include
- using namespace std;
-
-
- //被适配类即待转化的类
- class Adaptee {
- public:
- int OutPut220V() {
- std::cout << "正常220V电压..." << endl;
- return 220;
- }
- };
-
-
- //转化目标
- class Target {
- public:
- virtual int OutPut5V()=0;
- };
-
-
- //适配器
- class Adapter :public Target {
- public:
- int OutPut5V() {
- //输入的待转化电压
- int a = inPut_->OutPut220V();
- //转化方法
- int b = a / 44;
- //返回转化结果
- std::cout << "220V电压转化为5V电压..." << endl;
- return b;
- }
- void SetInpt(Adaptee * inPut) {
- inPut_ = inPut;
- }
-
- private:
- Adaptee * inPut_;
- };
-
-
- int main()
- {
- Adaptee * input_ = new Adaptee();
-
- Adapter * adater_ = new Adapter();
-
- adater_->SetInpt(input_);
-
- adater_->OutPut5V();
-
- return 0;
- }
-