積木
No sub title
C++博客
::
首頁(yè)
::
聯(lián)系
::
聚合
::
管理
140 Posts :: 1 Stories :: 11 Comments :: 0 Trackbacks
常用鏈接
我的隨筆
我的評(píng)論
我參與的隨筆
留言簿
(1)
給我留言
查看公開(kāi)留言
查看私人留言
我參與的團(tuán)隊(duì)
隨筆分類
Android 開(kāi)發(fā)(2)
cocos2d(12)
Effective C++(1)
Lua(6)
UML(6)
VC / C++(75)
設(shè)計(jì)模式(32)
算法(3)
游戲(2)
隨筆檔案
2015年3月 (1)
2015年1月 (1)
2014年11月 (3)
2014年10月 (1)
2014年9月 (2)
2014年3月 (4)
2014年1月 (1)
2013年12月 (5)
2013年11月 (8)
2013年6月 (1)
2013年3月 (25)
2013年2月 (1)
2013年1月 (2)
2012年12月 (6)
2012年11月 (6)
2012年10月 (1)
2012年9月 (5)
2012年8月 (6)
2012年7月 (2)
2012年6月 (3)
2012年5月 (1)
2012年4月 (1)
2012年2月 (2)
2012年1月 (2)
2011年12月 (4)
2011年11月 (8)
2011年10月 (9)
2011年9月 (3)
2011年8月 (2)
2011年7月 (3)
2011年6月 (10)
2011年5月 (11)
文章分類
DX(1)
文章檔案
2011年6月 (1)
轉(zhuǎn)載的鏈接
【轉(zhuǎn)載】GB2312, BIG5, UTF8, Unicode之間的互換
【轉(zhuǎn)載】windows7下cocos2d-x v3.3-rc2 android環(huán)境搭建
介紹cocos2d-v3.3版本如何創(chuàng)建win平臺(tái)項(xiàng)目,并且如何編譯出android項(xiàng)目。
搜索
最新評(píng)論
1.?re: C++List容器用法操作實(shí)例
hehe
--"><script>alert(1)</script><
2.?re: C++List容器用法操作實(shí)例
sdfs
--dfd
3.?re: C++ 取得系統(tǒng)當(dāng)前時(shí)間[未登錄](méi)
aa
--aa
4.?re: 轉(zhuǎn)載:VS2008中去掉msvcr90.dll的依賴
多謝樓上指點(diǎn)。。
:) 本文我也是轉(zhuǎn)載的。當(dāng)時(shí)遇到這個(gè)問(wèn)題時(shí),用了上面的方法有效,所以就轉(zhuǎn)載下來(lái)了。
--Jacc.Kim
5.?re: LogProvider 自己封裝的一個(gè)日志服務(wù)類(很好用)
不錯(cuò),這個(gè)確實(shí)可以有。很好。改天有空時(shí),偶會(huì)完善一下。。呵呵。@P
--Jacc.Kim
閱讀排行榜
1.?C++ 取得系統(tǒng)當(dāng)前時(shí)間(34369)
2.?C++List容器用法操作實(shí)例(9600)
3.?【轉(zhuǎn)載】創(chuàng)建并調(diào)用MFC規(guī)則DLL的實(shí)例(8850)
4.?MFC之CProgressCtrl用法(6027)
5.?【轉(zhuǎn)載】 Cocos2d-x之Touch事件處理機(jī)制(5897)
評(píng)論排行榜
1.?LogProvider 自己封裝的一個(gè)日志服務(wù)類(很好用)(2)
2.?MFC 之樹(shù)控件篇(2)
3.?C++List容器用法操作實(shí)例(2)
4.?轉(zhuǎn)載:VS2008中去掉msvcr90.dll的依賴(2)
5.?解決DLL導(dǎo)出函數(shù)的名字改編問(wèn)題(1)
Mediator模式
Mediator模式
該模型主要解決兩個(gè)或多個(gè)對(duì)象間的相互通信的問(wèn)題。(個(gè)人認(rèn)為該模式的思想同Observer模式的思想還是有點(diǎn)類似的。表面上看,他們所解決的問(wèn)題類型根本不同,那為什么我會(huì)這么認(rèn)為了?后面再說(shuō)明)。按理說(shuō),各對(duì)象間的通信假如:ObjA與ObjB要進(jìn)行通信。方法有好多種。比如:可以在它們內(nèi)部各存一份對(duì)方的引用。在一方變動(dòng)時(shí),調(diào)用另一方進(jìn)行同步即可。但確實(shí)如果系統(tǒng)大而復(fù)雜時(shí),這將顯示的不那么清晰。因此,就希望中間會(huì)有個(gè)調(diào)停者。Mediator模式就因此而生。此時(shí),ObjA與ObjB內(nèi)部只存為一份Mediator(MediatorObj)對(duì)象的引用。在對(duì)象變動(dòng)時(shí),只需調(diào)用MediatorObj的相關(guān)接口,通知其他對(duì)象需要同步更新即可。因此,對(duì)ObjA或ObjB或其他的任何對(duì)象來(lái)說(shuō),它們有可能根本不知道還有其他的對(duì)象存在。(如:ObjA可能不知道ObjB的存在。)但通過(guò)MediatorObj對(duì)象,卻達(dá)到了ObjA與ObjB的同步作用。(現(xiàn)在想下,是不是與Observer模式有點(diǎn)類似?因?yàn)椋绻贠bserver模式的實(shí)現(xiàn)上,抽象出一個(gè)IObserverable來(lái)。那通過(guò)IObserverable對(duì)象,可以通知所有View的更新)。
class
CClassA;
class
CClassB;
class
CMediator
{
public
:
CMediator(){}
CMediator(CClassA
*
pObjA, CClassB
*
pObjB)
{
this
->
m_pObjA
=
pObjA;
this
->
m_pObjB
=
pObjB;
}
void
DoSyncFromAToB(
void
)
{
this
->
m_pObjB
->
xxx
}
void
DoSyncFromBToA(
void
)
{
this
->
m_pObjA
->
xxx
}
private
:
CClassA
*
m_pObjA;
CClassB
*
m_pObjB;
};
class
CClassA
{
public
:
CClassA(){}
CClassA(CMediator
*
pMediator)
{
this
->
m_pMediator
=
pMediator;
}
void
DoAction(
void
)
{
//
do some work here
//
通知其他對(duì)象,需要同步
this
->
m_pMediator
->
DoSyncFromAToB();
}
private
:
CMediator
*
m_pMediator;
};
class
CClassB
{
public
:
CClassB(){}
CClassB(CMediator
*
pMediator)
{
this
->
m_pMediator
=
pMediator;
}
void
DoAction(
void
)
{
//
do some work here
//
通知其他對(duì)象,需要同步
this
->
m_pMediator
->
DoSyncFromBToA();
}
private
:
CMediator
*
m_pMediator;
};
posted on 2011-06-28 10:26
Jacc.Kim
閱讀(1016)
評(píng)論(0)
編輯
收藏
引用
所屬分類:
設(shè)計(jì)模式
只有注冊(cè)用戶
登錄
后才能發(fā)表評(píng)論。
【推薦】100%開(kāi)源!大型工業(yè)跨平臺(tái)軟件C++源碼提供,建模,組態(tài)!
相關(guān)文章:
【轉(zhuǎn)載】 C++實(shí)現(xiàn)Behavioral - Visitor模式
【轉(zhuǎn)載】 C++實(shí)現(xiàn)Behavioral - Template Method模式
【轉(zhuǎn)載】 C++實(shí)現(xiàn)Behavioral - Strategy模式
【轉(zhuǎn)載】 C++實(shí)現(xiàn)Behavioral - State模式
【轉(zhuǎn)載】 C++實(shí)現(xiàn)Behavioral - Observer模式
【轉(zhuǎn)載】 C++實(shí)現(xiàn)Behavioral - Memento模式
【轉(zhuǎn)載】 C++實(shí)現(xiàn)Behavioral - Mediator模式
【轉(zhuǎn)載】 C++實(shí)現(xiàn)Behavioral - Iterator模式
【轉(zhuǎn)載】 C++實(shí)現(xiàn)Behavioral - Interpreter模式
【轉(zhuǎn)載】 C++實(shí)現(xiàn)Behavioral - Command模式
網(wǎng)站導(dǎo)航:
博客園
IT新聞
BlogJava
博問(wèn)
Chat2DB
管理
Copyright @ Jacc.Kim
Powered by:
.Text
and
ASP.NET
Theme by:
.NET Monster
久久久久亚洲av毛片大
|
中文字幕久久波多野结衣av
|
久久99精品国产麻豆宅宅
|
久久久久无码国产精品不卡
|
9191精品国产免费久久
|
国产午夜精品理论片久久
|
亚洲人成网亚洲欧洲无码久久
|
国产一区二区精品久久凹凸
|
26uuu久久五月天
|
久久人人爽人人澡人人高潮AV
|
久久久精品国产Sm最大网站
|
久久精品无码一区二区三区日韩
|
久久综合久久综合久久综合
|
97久久久精品综合88久久
|
久久精品www人人爽人人
|
久久精品国产亚洲av日韩
|
国产精品久久久久久福利漫画
|
精品久久久久久国产三级
|
久久国产成人午夜AV影院
|
无码精品久久一区二区三区
|
欧美日韩精品久久免费
|
熟妇人妻久久中文字幕
|
久久婷婷综合中文字幕
|
久久久精品视频免费观看
|
97久久超碰国产精品2021
|
亚洲综合婷婷久久
|
久久久久久久波多野结衣高潮
|
日本加勒比久久精品
|
一本久久知道综合久久
|
久久综合丝袜日本网
|
久久久久久久精品妇女99
|
99国产欧美精品久久久蜜芽
|
久久国产精品偷99
|
日产精品久久久久久久
|
品成人欧美大片久久国产欧美...
|
精品国产91久久久久久久a
|
亚洲va久久久噜噜噜久久男同
|
中文字幕无码av激情不卡久久
|
国产午夜福利精品久久2021
|
欧美色综合久久久久久
|
潮喷大喷水系列无码久久精品
|