設計模式_適配器模式

適配器模式

適配器模式(Adapter Pattern)是作爲兩個不兼容的接口之間的橋樑。這種類型的設計模式屬於結構型模式,它結合了兩個獨立接口的功能。

這種模式涉及到一個單一的類,該類負責加入獨立的或不兼容的接口功能。舉個真實的例子,讀卡器是作爲內存卡和筆記本之間的適配器。您將內存卡插入讀卡器,再將讀卡器插入筆記本,這樣就可以通過筆記本來讀取內存卡。

#ifndef _ADAPTE_H_
#define _ATAPTE_H_
#include<iostream>

 //現在的接口
class target
{
public:
    virtual void request() = 0;
};

class conTarget: public target
{
public:
    void request() override
    {
        std::cout << "conTarget request" << std::endl;
    }
};

 //引入的,需要被適配的類
//沒有request()的方法
class adaptee
{
public:
    void specialrequest()
    {
        std::cout << "special request" << std::endl;
    }
};

 //適配器
//改變adaptee的接口
class adapte : public target,private adaptee
{
    void request() override
    {
        specialrequest();
    }
};
#endif

int main()
{
    target * contg = new conTarget();
    contg->request();

    target * tg = new adapte();
    tg->request();

    return 0;

}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章