你的位置:首页 > 软件开发 > ASP.net > Chain Of Responsibility(职责连)

Chain Of Responsibility(职责连)

发布时间:2016-06-26 13:00:07
1.意图 使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。2.动机 给多个对象处理一个请求的机会,从而解耦发送者和接收者。3.适用性有多个的对象可以处理一个 ...

1.意图

    使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。

2.动机

    给多个对象处理一个请求的机会,从而解耦发送者和接收者。

3.适用性

  • 有多个的对象可以处理一个请求,哪个对象处理该请求运行时刻自动确定。
  • 你想在不明确指定接收者的情况下,向多个对象中的一个提交一个请求。
  • 可处理一个请求的对象集合应被动态指定。

4.结构

    Chain Of Responsibility(职责连)

5.代码实例

    

//Handler.h#include <memory>class AbstractHandler{public:  virtual void HandleRequest() = 0;  virtual void SetHandler(std::shared_ptr<AbstractHandler> pHandler);protected:  std::shared_ptr<AbstractHandler> m_pHandler;};class BaseHandler : public AbstractHandler{public:  virtual void HandleRequest();};class ConcreteHandler1 : public BaseHandler{public:   void HandleRequest();};class ConcreteHandler2 : public BaseHandler{public:   void HandleRequest();};

原标题:Chain Of Responsibility(职责连)

关键词:

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录