介面卡模式有兩種:
1.類的介面卡 2.物件介面卡
,物件介面卡更多一些,這個模式使得復用舊的介面成為可能。
uml示意圖
1)採用繼承原有介面類的方式
2)採用組合原有介面類的方式
第二種實現方法**:
1)adapt.h
#ifndef adapter_h
#define adapter_h
// 需要被adapt的類
class target
virtual ~target() {}
virtual void request() = 0;
};// 與被adapt物件提供不相容介面的類
class adaptee
~adaptee(){}
void specialrequest();
};// 進行adapt的類,採用聚合原有介面類的方式
class adapter
: public target
;#endif
2)adapt.cpp
#include "adapter.h"
#include
void adaptee::specialrequest()
adapter::adapter(adaptee* padaptee)
: m_padptee(padaptee)
adapter::~adapter()
void adapter::request()
3)測試**
#include "adapter.h"
#include
int main()
介面卡模式(類介面卡 物件介面卡)
做個筆記 引用 public inte ce usb public inte ce psp public class usber implements usb 類介面卡 psp適用usb介面 public class usbadapter extends usber implements psp 物...
介面卡模式 預設介面卡,類介面卡,物件介面卡
模式思想 改變乙個類的對外介面 增加或減少 以滿足不同外部呼叫者的需求 角色成員 目標介面 target 客戶所期待的介面。目標可以是具體的或抽象的類,也可以是介面。需要適配的類 adaptee 需要適配的類或適配者類。介面卡 adapter 通過包裝乙個需要適配的物件,把原介面轉換成目標介面。適配...
設計模式 介面卡模式 類介面卡 物件介面卡
乙個小例子,便於理解,上 這是我們造的。現在想用這個方法。public class adaptee 類介面卡。對我們想要的方法封裝一下,target就能像之前一樣,呼叫request方法即可。public class adapter1 extends adaptee implements targe...