青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

積木

No sub title

  C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
  140 Posts :: 1 Stories :: 11 Comments :: 0 Trackbacks

常用鏈接

留言簿(1)

我參與的團隊

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

設計模式學習總結之四

六:Bridge模式(即:橋接模式)

 講之前,先聲明:由于本人電腦不是很好,沒法裝上vc環境運行。因此以下代碼,僅是手工輸入,在環境中未必能編譯通過。
但以下,僅僅只是介紹一種思想。僅供參考。同時,如果說明有誤之處,歡迎指正。另外,則于一次性手工輸入下面那么多東東,確實
不容易,所以Delphi的具體實現。就不在此列出。如有興趣用Delphi實現的朋友,也可以找本人交流,本人盛感榮幸。
(當然如果是C++的朋友也同樣、甚至更加歡迎)

 看了這么多次的橋接模式,這次總算明白了。要想理解橋接模式,個人認為,還是有必要同抽象及其實現進行一下比較。
 1) 抽象及實現。我相信,跟不同的人說話,都會有訣竅在里頭。同是coder,相信,最默契的溝通,還是code吧。我們來看下抽象及其實現的代碼。
//抽象基類聲明
class AbstractClassX
{
private:
 //xxx
protected:
 //xxx
public:
 //xxx
 void DoSomething(void) = 0;
 //xxx
}

//AbstractClassX的具體實現 ClassXImplX1
class ClassXImplX1 : public AbstractClassX
{
....
public:
 void DoSomething(void){ // do something with method 1... }
}

//AbstractClassX的具體實現 ClassXImplX2
class ClassXImplX2 : public AbstractClassX
{
....
public:
 void DoSomething(void){ // do something with method 2... }
}

 在實際應用中,我們用的是抽象類。而實際上實例化的,卻是某具體子類。這種實現被我們多數人所使用。而它實際上解決的只是這么一類問題,即:同一行為的不同表現。當
然大多數需求,用此就可以了。
 但現在假如說有這么一種情況:假如說,上面的處理僅僅只適用于平臺A,而用戶卻希望同時,它也要能夠在平臺B上也能夠一樣的操作。那當如何?
很明顯的,此種需要,并不是行為上的需求,因為不論是在平臺A上還是平臺B上,都要執行相同的操作。而且表示也是一樣的。該需要的實現。實際上是需要我們重新封裝個抽象層,
來專門處理平臺B上的該行為。而實際的實現,卻還是跟平臺A上的一樣。其實我們仔細一想。其實平臺A了的抽象(即:AbstractClassX)與平臺B上的抽象(假如為:AbstractClassY),
其實它們是類似的。因為需要處理的功能一樣。因此,我們就想,如果將這種抽象與實現具體分離開來。在抽象中,留個具體實現的抽象引用(此其實就是該模式所指的Bridge----即:橋
通過該橋,將抽象與具體的實現連接起來。因此,我想該模式的名稱就是因此得來的吧)。那樣。抽象可以不受限制的擴展,實現也同樣可以不受限制的擴展。這樣,系統的框架就不需要
更改,其不妙哉?!因此就有了如下的code

//******************************************************************
//* 抽象聲明及抽象部分的實現
//******************************************************************
//抽象的抽象基類聲明
class AbstractClass
{
private:
 //xxx
protected:
 AbstractImpl* m_pAIObj; //具體的抽象實現的抽象對象(這話很ao口,但理解了這話,也就理解了該模式。可以大言不慚地說,該模式的秘密就在這句話上)
 //xxx
public:
 //xxx
 void DoSomething(void) = 0;
 //xxx
}

//平臺A上的抽象的具體實現(注意:此實現子類,是針對抽象的)
class AbstractClassA : public AbstractClass
{
private:
 //xxx
protected:
 //xxx
public:
 //xxx
 void DoSomething(void) { m_pAIObj.DoSomething(); }
 //xxx
}

//平臺B上的抽象的具體實現(注意:此實現子類,是針對抽象的)
class AbstractClassB : public AbstractClass
{
private:
 //xxx
protected:
 //xxx
public:
 //xxx
 void DoSomething(void) { m_pAIObj.DoSomething(); }
 //xxx
}

//******************************************************************
//* 實現的抽象聲明及其實現
//******************************************************************
//實現部分的抽象基類聲明
class AbstractImplClass
{
private:
 //xxx
protected:
 //xxx
public:
 //xxx
 void DoSomething(void) = 0;
 //xxx
}

//具體算法1的具體實現
class ImplX : public AbstractImplClass
{
private:
 //xxx
protected:
 //xxx
public:
 //xxx
 void DoSomething(void) { // do something... }
 //xxx
}

//具體算法1的具體實現
class ImplY : public AbstractImplClass
{
private:
 //xxx
protected:
 //xxx
public:
 //xxx
 void DoSomething(void) { // do something... }
 //xxx
}

//******************************************************************
//* 實際應用方面
//******************************************************************

int main(int argc, char* argv[])
{
 AbstractImplClass* pImplObj = new ImplX();//或new ImplY();等等。
 //下面注意下:因為上面的代碼中,本人為了簡寫,并沒有明確寫出抽象部分的具體構造函數。
 //相信,是程序員,看完下面這行都懂得,上面的抽象部分的聲明,應該聲明一個什么樣的
 //構造函數吧。
 AbstractClass* pAbstractObj = new AbstractClassA(pImplObj);//或new AbstractClassB(pImplObj);等等。

 //do other something...

 //在此補充一點:有上面的設計,系統的框架將都無需修改。不論是實現的具體算法改變了,還是
 //抽象的需求變動。程序都無需要修改框架代碼,,僅僅只需要寫個具體的實現類(不管是實現的實現類,還是
 //抽象的實現類)即可。這就是橋接模式。
}

posted on 2011-05-16 00:42 Jacc.Kim 閱讀(235) 評論(0)  編輯 收藏 引用 所屬分類: 設計模式
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美/亚洲一区| 一个色综合导航| 欧美日韩国产bt| 欧美一区二区三区免费观看视频| 国产精品亚洲不卡a| 国产精品视频99| 国产噜噜噜噜噜久久久久久久久| 国产精品一级二级三级| 国产亚洲a∨片在线观看| 一区二区视频免费在线观看| 亚洲国产日韩欧美在线动漫| 一区二区三区日韩欧美精品| 欧美一级在线视频| 久久婷婷久久| 亚洲精品乱码久久久久久按摩观| 亚洲大片免费看| 亚洲免费观看| 久久久久久成人| 欧美丝袜一区二区| 国产一区二区三区在线免费观看 | 亚洲区第一页| 亚洲在线视频观看| 免费成人高清在线视频| 一区二区欧美日韩| 久久人人爽人人爽爽久久| 欧美性猛交99久久久久99按摩 | 亚洲一区二区成人在线观看| 久久精品一区二区| 91久久精品日日躁夜夜躁国产| 亚洲尤物在线视频观看| 欧美777四色影视在线| 国产日韩精品一区观看| 一区二区欧美激情| 欧美电影免费观看| 亚洲性感激情| 欧美日本成人| 亚洲激情视频网| 久久这里有精品视频| 亚洲影音一区| 欧美日韩在线一区二区| 亚洲国产色一区| 久久字幕精品一区| 亚洲免费中文字幕| 欧美性一二三区| 一本久道久久综合狠狠爱| 老牛国产精品一区的观看方式| 亚洲午夜精品一区二区| 欧美日韩国产精品自在自线| 亚洲国内高清视频| 免费观看成人www动漫视频| 亚洲女同同性videoxma| 欧美日韩一二区| 99国产精品99久久久久久粉嫩| 欧美91视频| 亚洲欧美视频| 欧美一级黄色录像| 久久久午夜精品| 欧美性猛交xxxx乱大交退制版| 欧美日韩国产美女| 国产精品狼人久久影院观看方式| 欧美成人自拍视频| 国产精品入口尤物| 国产一区二区在线观看免费播放| 国产精品乱人伦一区二区| 久久综合免费视频影院| 久久免费精品视频| 欧美高清在线视频观看不卡| 久久超碰97人人做人人爱| 亚洲性感激情| 久久大逼视频| 欧美一区二区三区四区视频| 亚洲视频每日更新| 亚洲一品av免费观看| 久久免费视频一区| 欧美高清视频www夜色资源网| 欧美日韩一区二| 亚洲日韩第九十九页| 欧美在线观看一二区| 午夜欧美大尺度福利影院在线看| 亚洲欧美激情精品一区二区| 久久综合网络一区二区| 欧美一区二区日韩一区二区| 米奇777在线欧美播放| 在线综合亚洲欧美在线视频| 开元免费观看欧美电视剧网站| 欧美国产国产综合| 久久午夜av| 六月丁香综合| 国产一区二区精品| 亚洲区免费影片| 欧美成人中文字幕| 尤物在线精品| 亚洲在线观看视频网站| 久久性色av| 久久一区二区三区国产精品 | 91久久久亚洲精品| 一区二区三区欧美视频| 老司机一区二区三区| 亚洲在线一区| 欧美三日本三级少妇三2023| 欧美/亚洲一区| 性欧美18~19sex高清播放| 欧美激情一区在线| 亚洲丰满少妇videoshd| 毛片av中文字幕一区二区| 午夜欧美精品| 国产精品亚洲综合| 久久亚洲私人国产精品va| 欧美一区日韩一区| 亚洲国产影院| 99视频国产精品免费观看| 欧美日韩中文精品| 久久青青草原一区二区| 欧美看片网站| 欧美电影免费观看高清| 久久精品国产成人| 久久精品国产一区二区三区免费看 | 亚洲精品美女在线观看| 国产精品久久婷婷六月丁香| 开元免费观看欧美电视剧网站| 在线视频中文亚洲| 激情视频一区二区| 欧美精品二区三区四区免费看视频| 性色av一区二区三区在线观看| 国产精品伦子伦免费视频| 最新国产乱人伦偷精品免费网站| 尤物在线观看一区| 国产精品免费观看视频| 欧美国产日韩精品| 欧美日韩国产综合视频在线| 免费观看30秒视频久久| 中国成人亚色综合网站| 亚洲天堂视频在线观看| 毛片av中文字幕一区二区| 亚洲宅男天堂在线观看无病毒| 免费毛片一区二区三区久久久| 欧美激情一区在线观看| 亚洲国产日韩欧美综合久久| 亚洲天堂网站在线观看视频| 在线观看不卡av| 久久久人成影片一区二区三区 | 免费短视频成人日韩| 国产日韩欧美a| 欧美日韩中文字幕日韩欧美| 99re视频这里只有精品| 久久九九免费视频| 黄色影院成人| 久久久精品2019中文字幕神马| 亚洲啪啪91| 久久国产99| 国产欧美精品日韩区二区麻豆天美| 亚洲激情一区二区三区| 亚洲一卡久久| 欧美成人免费网站| 久久一区二区视频| 久久久久国色av免费观看性色| 国产精品一区二区在线观看网站| 午夜伦理片一区| 性欧美精品高清| 欧美成人蜜桃| 正在播放亚洲一区| 一区二区在线视频播放| 国产日韩精品在线观看| 欧美在线视频播放| 99国产精品国产精品久久| 久久久久www| 久久久综合精品| 欧美mv日韩mv国产网站app| 久久久久99精品国产片| 午夜精品久久久久久久久久久久| 伊人狠狠色j香婷婷综合| 国产精品高清网站| 免费观看一区| 久久亚洲春色中文字幕| 久久综合九色欧美综合狠狠| 亚洲欧美伊人| 久久全国免费视频| 亚洲综合久久久久| 欧美成人精品高清在线播放| 国产精品盗摄一区二区三区| 国产精品亚洲欧美| 最新亚洲视频| 欧美一区二区黄色| 日韩视频免费看| 亚洲字幕一区二区| 国产精品亚洲综合一区在线观看| 伊人久久亚洲美女图片| 一区二区三区黄色| 亚洲大片在线观看| 亚洲女与黑人做爰| 久久久久久黄| 亚洲精选一区| 蜜桃av综合| 美女久久一区| 欧美黄色一区| 欧美成人免费在线观看| 91久久精品国产91久久| 亚洲一区免费| 亚洲欧美日韩中文在线制服| 香蕉久久夜色精品|