知識點
職責鏈(chain of responsibility)
知識內容
使多個物件都有機會處理請求,從而避免請求的傳送者和接收者之間的耦合關係。將這些物件連成一條鏈,並沿著這條鏈傳遞該請求,直到有乙個物件處理它為止。
示例
#includeusing namespace std;
typedef int topic;
const topic no_help_topic = -1;
class helphandler
virtual bool hashelp()
virtual void sethandler(helphandler* h, topic t)
virtual void handlehelp()
}};class widget : public helphandler
};class button : public widget
virtual void handlehelp()
else
}};class dialog : public widget
virtual void handlehelp ()
else
}};};
int main()
鏈結 設計模式 職責鏈
一 功能 使多個物件都有機會處理請求,從而避免請求的傳送者和接收者之間的耦合關係。將這些物件連成一條鏈,並沿著這條鏈傳遞該請求,直到有乙個物件處理它為止。二 優缺點 客戶不知道它的請求將被哪個物件處理。三 實現 有兩種實現思路。一種是自己先處理,處理不成功了再交給其他人處理。另一種是先交給別人處理,...
設計模式 職責鏈模式
2008年08月17日 星期日 下午 04 28 using system using system.collections.generic using system.text public officer officer o public abstract void deal action a c...
設計模式 職責鏈模式
1 request.h ifndef request h define request h include include using namespace std class request 請求類定義 endif request h 2 manager.h ifndef manager h def...