zoukankan      html  css  js  c++  java
  • c++ 适配器模式(adapter)

    当两个系统的接口不一样时,我们就要重新封装一下接口,以便于当前系统的调用。这种模式叫做适配器模式。适配器模式分为两种:

    1.对象组合适配器Object Adapter

    2.类适配器Class Adapter)采用类继承的方式实现。

    下面是对象适配器的使用。

    #include <iostream>
    #include <string>
    
    using namespace std;
    
    class CCnOutlet
    {
    public:
        virtual ~CCnOutlet()
        {
    
        };
        virtual void Cnplug()
        {
            //cout << "中式插座!" << endl;
        };
    };
    
    class CEnOutlet
    {
    public:
        void EnPlug()
        {
            cout<<"use en plug" << endl;
        }
    };
    
    class CCnOutletAdapter : public CCnOutlet
    {
    public:
        CCnOutletAdapter(CEnOutlet* pEnOutlet):m_pEnOutlet(pEnOutlet) {};
        virtual ~CCnOutletAdapter() {};
        virtual void Cnplug()
        {
            cout << "adapter transfer" << endl;
            m_pEnOutlet->EnPlug();
        }
    
    private:
        CEnOutlet* m_pEnOutlet;
    };
    
    int main()
    {
        CEnOutlet *pEnOutlet = new CEnOutlet;
        CCnOutlet *pCnOutlet = new CCnOutletAdapter(pEnOutlet);
        pCnOutlet->Cnplug();
    
        delete pEnOutlet;
        delete pCnOutlet;
    
        system("pause");
        return 0;
    }
  • 相关阅读:
    命令行
    作业三C++
    作业二
    0003---简单的a+b问题
    0002---五层小山
    0001---Hello world
    关于OJ的那些事
    CDQ分治学习笔记
    C++ IO的一些注意点
    Vscode配置C++环境
  • 原文地址:https://www.cnblogs.com/onlycxue/p/3476932.html
Copyright © 2011-2022 走看看