Я хочу реализовать шаблон наблюдателя и хочу, чтобы класс X наблюдал обновления в классах A и B.
X является производным от абстрактного базового класса XObs, который имеет функцию update (), принимающую перечисление в качестве параметра того, что произошло.
Логическая проблема здесь в том, что X должен знать, кто из A и B отправил обновление, а X не может определить это по параметру enum.
Каковы плюсы / минусы добавления еще одного параметра для update (), который сообщает, кто из A и B отправил обновление? Какие еще способы можно решить это? (Я скорее не создаю базовый класс для A и B и отправляю указатель this в update (), поскольку A и B совершенно разные.)
Спасибо
Tomas