本文主要介紹適配器模式橋接模式(適配器模式和橋接模式之間的區別),下面一起看看適配器模式橋接模式(適配器模式和橋接模式之間的區別)相關資訊。
適配器模式:
//適配器模式將一個類的接口轉換成客戶想要的另一個接口//接口層類out接口{public:虛擬~ out接口=默認;//客戶希望實現的界面,例如:用戶希望一次性打印姓名、年齡、分數虛擬void showinfomation= 0;};//驅動類驅動{public://the原接口名稱、年齡、性能在不同的接口中實現。void showname(字符串名稱){ cout ;nam: 姓名和名稱 endl};void showage(int age){ cout ;ag: 年齡與年齡 endl};void show score(int score){ cout ;scor: 得分與獎金 endl};};//適配層class adapt: public out接口{public: virtual void show informationoverride { drive dr;博士秀名( 張三 );showage博士(24);showscore博士(100);}};test(adapter,adapter 1){ out interface * inc = new adapter;inc-show info mation;刪除inc}
橋接模式:
//抽象部分,外部接口,抽象產品//當一個類有兩個獨立變化的維度,并且兩個維度都需要擴展時。//當系統不想使用繼承或者由于多級繼承導致系統類數量急劇增加時。//當系統需要在組件的抽象角色和具體角色之間增加更多的靈活性時。//例1:畫一個正方形,一個圓形,一個長方形。顏色:紅色、黑色、白色//色類顏色{public:虛擬void fill color(string produce)= 0;virtual ~ color{ };};//shape class shape {protect:顏色* fillcolorpublic:形狀(顏色* usercolor):填充顏色(用戶顏色){ };虛擬void draw shape= 0;};//concrete shape類rectangl: public shape {public: virtual void draw shapeoverride { fill color-fill color( 矩形 );} rectangle(color * user color):形狀(user color){ } };類廣場:公共形狀{public:虛擬void繪制形狀覆蓋{填充顏色-填充顏色( 廣場 );} square(color * user color):形狀(user color){ } };類白色:公共顏色{public:虛擬void fillcolor(字符串產生)覆蓋{ cout 入門級白色 _ _ func _ _ endlcout 白色 產生:公共顏色{public:虛擬void fillcolor(字符串產生)覆蓋{ cout 入門黑 _ _ func _ _ endlcout 黑色 產生endl;}};test(bridge_module,bridge 1){ color * w = new white;color * blk = new black;矩形rg(w);sq sq(黑色);sq。draw shape;rg。draw shape;}
代理模式:
類服務{public: int query data{//server,cout 這是服務數據 endl返回0;}};//代理模式類c proxy {privat: c proxy{ }靜態cproxy *實例;服務m _ serverpublic:靜態c proxy * getinstance{ if(instance = = nullptr){ instance = new c proxy;}返回實例;} static c proxy get proxy{ static c proxy single;退單;} int querydata {//代理訪問服務器m_server。query data;返回0;}};c proxy * cproxy:: instance = nullptr;類客戶端{public: void showdata{ c proxy * px = cproxy:: getinstance;px-query data;c proxy prx = cproxy: : getproxy;prx。query data;}};test(proxy,proxy1){客戶端cl;cl。showdata;}
輕量級模式
//享受元模式共享數據類共享選項{public echo 0-@ 。com虛擬void option= 0;};:公共sharedoption{public:虛擬void optionoverride { cout openation a key : m _ k: m _ k: string m _ key;};類share factory {public: shared option * getshareopention(string open option key){ mapstring,shared option * : : iterator item = m _ option map . find(open option key);if(item = = m _ option map . end){ shared option * opt = new shared option a(opention key);m _ option map . insert(make _ pair(opention key,opt));返回opt} else { cout it: mapstring,sharedoption * m _ optionmap};test(shareddata,main){ share factory sf;sharedoption* opt1 = sf。getshareopention( 第一 );op t1-option;sharedoption* opt2 = sf。getshareopention( 二 );op t2-option;sharedoption* opt3 = sf。getshareopention( 三個 );opt 3-option;股份認購n* opt4 = sf。getshareopention( 第一 );opt 4-option;sharedoption* opt5 = sf。getshareopention( 二 );opt 5-option;}
標簽:
界面模式
了解更多適配器模式橋接模式(適配器模式和橋接模式之間的區別)相關內容請關注本站點。
win10壁紙自動更換怎么關閉(windows壁紙自動更換)
六代酷睿i3(6代i3參數)
電腦硬盤固態和機械硬盤哪個好(電腦固態和機械硬盤)
榮耀v8怎么調節分辨率,為什么我的榮耀V8分辨率才怎么點
搜狗輸入法 mac設置方法視頻(搜狗輸入法 mac設置方法圖片)
適配器模式 橋接模式(適配器模式和橋接模式的區別)
小米5尊享版上市價格(小米5尊享版和普通有什么區別)
華為高端旗艦機排行榜(華為最強旗艦機)
win10電腦之間怎么共享文件(window10怎么設置文件共享)
電腦最耐玩單機游戲(2021年最好玩電腦單機游戲排行榜前十名推薦)
如何手動停止sppsvc服務(sysprep怎么關閉)
win10刪除流氓彈窗的終極方法(window10如何刪除流氓軟件)
設備管理信息系統,怎么用livebos studio做一個設備管理系統
ipad如何為軟件應用設置全屏顯示時間(ipad如何為軟件應用設置全屏顯示圖標)
在移動硬盤裝游戲運行起來有影響嗎(移動硬盤安裝游戲會卡嗎)
電腦realtek在哪打開(怎么找realtek)
筆記本電腦的品控是什么意思(什么牌子的筆記本品控好)
怎么禁用應用程序,如何禁止手機后臺程序
網絡安全在哪里學最好,哪里學網絡安全最好
主板故障排除方法圖解(主板故障排除方法視頻)_1