设计模式C++描述----04.观察者(Observer)模式 (三)

2014-11-24 12:03:53 · 作者: · 浏览: 3
//遍历所有观察者
while (pos != NULL)
{
CView* pView = GetNextView(pos);
ASSERT_VALID(pView);
if (pView != pSender)
pView->OnUpdate(pSender, lHint, pHint);
}
}从代码中我们可以看到,AddView 和 RemoveView 相当于注册和注销操作,UpdateAllViews 相当于通知操作,通知操作会依次调用各个CView 对象的 OnUpdate,进行更新。

作者 lwbeyond