美文网首页
c++适配器模式

c++适配器模式

作者: 一路向后 | 来源:发表于2021-02-15 18:58 被阅读0次

    1.适配器模式简介

       适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。

    2.源码实现

    #include <iostream>
    #include <string>
    
    using namespace std;
    
    class CCnOutlet
    {
    public:
        virtual ~CCnOutlet()
        {
    
        }
    
        virtual void Cnplug()
        {
            cout << "中式插座!" << endl;
        }
    };
    
    class CEnOutlet
    {
    public:
        virtual ~CEnOutlet()
        {
    
        }
    
        virtual void Enplug()
        {
            cout << "英式插座!" << endl;
        }
    };
    
    class CCnOutletAdapter : public CCnOutlet
    {
    public:
        CCnOutletAdapter(CEnOutlet *pEnOutlet) : m_pEnOutlet(pEnOutlet){};
    
        virtual ~CCnOutletAdapter(){};
    
        virtual void Cnplug()
        {
            m_pEnOutlet->Enplug();
            cout << "适配器转换" << endl;
        }
    
    private:
        CEnOutlet *m_pEnOutlet;
    };
    
    int main(int argc, char **argv)
    {
        CEnOutlet *pEnOutlet = new CEnOutlet;
        CCnOutlet *pCnOutlet = new CCnOutletAdapter(pEnOutlet);
    
        //英式插座适配中式插座
        pCnOutlet->Cnplug();
    
        delete pEnOutlet;
        delete pCnOutlet;
    
        return 0;
    }
    

    3.编译源码

    $ g++ -o example example.cpp
    

    4.运行及其结果

    $ ./example
    英式插座!
    适配器转换
    

    相关文章

      网友评论

          本文标题:c++适配器模式

          本文链接:https://www.haomeiwen.com/subject/frxmxltx.html