Observer

被観測者の状態が変化したら、観測者(Observer)に状態の変化があったことを通知するような構造をObserverパターンという。

17.Observer パターン | TECHSCORE(テックスコア)

main.cppで、

staff1に10、staff2に20、staff3に30をセットしてる。

$ vi main.cpp 
$ g++ -o main main.cpp manager.cpp staff.cpp 
$ ./main 
staff1 value_ = 10
staff2: staff1 changed!
staff3: staff1 changed!
staff2 value_ = 20
staff1: staff2 changed!
staff3: staff2 changed!
staff3 value_ = 30
staff1: staff3 changed!
staff2: staff3 changed!
$

staff1に10をセットされると、staff2, staff3に通知されて、"staff1 changed!"と出力。
他のstaffで値がセットされても、それ以外のstaffに通知される。

Sample/designpattern/observer/observer/src/observer at master · bg1bgst333/Sample · GitHub