ڼС
梦回起点
做你害怕做的事,你会发现:不过如此
本站基于WordPress—主题by 设计窝
冀ICP备15003737号
梦回起点
Copyright © 2015-2024 All rights reserved.

适配器模式——大话设计模式读书笔记

适配器模式(Adapter):将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类一起工作。

下面是适配器模式的UML图:

适配器模式

下面是C++实现的代码:

/*
* initm.com
* 作者:Stupid
* 时间:2017-11-1 20:51
* 描述: 代码使用QT5.9+MinGW53_32编译通过,代码为适配器模式的基本结构代码。
*/
#include <QCoreApplication>
#include <iostream>
#include <cstdlib>

class Target
{
public:
    virtual void Request(){
        std::cout << "普通请求!" << std::endl;
    }
};

class Adaptee
{
public:
    void SpecificRequest(){
        std::cout << "特殊请求!" << std::endl;
    }
};

class Adapter: public Target
{
private:
    Adaptee* adaptee = new Adaptee();
public:
    void Request()override final{
        adaptee->SpecificRequest();
    }
};

int main(int argc, char *argv[])
{
    system("chcp 65001");
    QCoreApplication a(argc, argv);

    Target* target = new Adapter;
    target->Request();

    return a.exec();
}

适配器模式增加一个适配器类来适应原本不兼容的类。

2017-11-01
                         
暂无评论

发表回复