Avoiding Circular Dependencies using Observer Patterns in C++
The basic concept is when you want information stored in one object, called the Model (or subject) to be watched by other objects, called Views (or observers). When information changes …