Насколько я могу судить, это вопрос стиля и объектно-ориентированного дизайна. Базовые хуки вторгаются в иерархию наследования, что требует дополнительного public
родительского класса и, возможно, навязывает множественное наследование проекту. Использование хуков-членов позволяет программисту обрабатывать объект как имеющий отношение has-a
с контейнером, а не как is-a
отношение с членством контейнера.