c++适配器模式

2021-02-15  本文已影响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
英式插座!
适配器转换
上一篇 下一篇

猜你喜欢

热点阅读