第十七章 介面卡模式

2022-09-11 05:03:09 字數 1176 閱讀 6326

介面卡模式(adapter):將乙個類的介面轉換成客戶希望的另外乙個介面。adapter模式使得原本由於介面不相容而不能一起工作的那些類可以一起工作。

在軟體開發中,系統的資料和行為都正確,但介面不符時,我們應該考慮用介面卡,目的是使控制範圍之外的乙個原有物件與某個介面匹配。介面卡模式主要應用於希望復用一些現存的類,但是介面又與復用環境要求不一致的情況。

基本**

#include#include#includeusing namespace std;

//target(客戶所期待的介面。目標可以是具體的或抽象的類,也可以是介面)

class target

};//adaptee(需要適配的類)

class adaptee

};//adapter(通過在內部包裝乙個adapter物件,把源原介面轉換成目標介面)

class adapter :public target

void request() };

int main()

籃球翻譯介面卡

#include#include#includeusing namespace std;

class player

virtual void attack() = 0;

virtual void defense() = 0;

};class forwards :public player

void attack()

void defense() };

class guards :public player

void attack()

void defense() };

//外籍中鋒

class foreigncenter

void setname(string name_t)

void jingong()

void fangshou() };

class translator : public player

void attack()

void defense() };

int main()

第十七章 介面卡模式

介面卡模式 將乙個類的藉口轉換成客戶希望的另外乙個介面。應用場景 系統的資料和行為都正確,但介面不符時,我們應該考慮使用介面卡模式,目的是使控制範圍之外的乙個原有物件與某個介面匹配。主要應用於希望復用一些現存的類,但是介面又與復用環境要求不一致的情況。注意 應該注意其應用場景,不能本末倒置。crea...

第十七章 Size Classes

通常,您希望應用程式的介面根據螢幕的尺寸和方向而顯示不同的布局。在本章中,您將修改homepwner中的detailviewcontroller的介面,以便當它出現在具有相對較小高度的螢幕上時,文字字段集合和影象檢視併排而不是堆疊在一起 圖17.1 圖17.1 homepwner 的 detailv...

第十七章 部署

總的來說,部署遇到了許多坑,而且還有好多坑還沒有踩。去cocode找了許多教程,才踩了一些坑,但是關於資料庫的坑,先留著。所有的db.session.add 後面都加上db.session.commit 才行。記得,這是狗書的問題!部署教程 每次修改後需要一下命令重新部署下 git add git ...