Chain of Responsibilityパターンは、ある処理がその部分の責任でできるならそこで処理し、できないなら上位部分に回すような構造。
14.Chain of Responsibility パターン | TECHSCORE(テックスコア)
main.cppで、
センダーでイベントを送信して、ハンドラで処理する。
$ vi main.cpp $ g++ -o main main.cpp first_event.cpp second_event.cpp sender.cpp $ ./main first proc done! class_sender::send TRUE! second proc done! class_sender::send TRUE! class_sender::send ALL FALSE! $
1が送信されると、firstのハンドラ。
2が送信されると、secondのハンドラ。
3が送信されると、どちらもないので"class_sender::send ALL FALSE!"が出力される。