首页 > 代码库 > 观察者模式

观察者模式

参考:http://www.cnblogs.com/codingexperience/p/5810651.html

 

 

push 模式: 在主题对象通知观察者对象的方法中,调用观察者自身更新方法时传入特定类型的参数。

pull 模式: 在主题对象通知观察者对象的方法中, 调用观察者自身更新方法时传入主题对象本身(this), 由观察者对象自己决定需要从主题对象中拉取什么信息。

 

push pattern:

void notifyObserver()

{

  foreach(auto observer in observerList)

  {

     observer->update(type args) //传入特定的类型

  }

}

 

pull pattern:

void notifyObserver()

{

  foreach(auto observer in observerList)

  {

     observer->update(this) // 传入当前主题对象

  }

}

观察者模式