Одна вещь, которую вы, возможно, заметили, изучив MFC, это то, что это API-оболочка, а не строго объектно-ориентированный. В то время как мы хотели бы для использования RAII (Resource Acquisition Is Initialisation), MFC не создает окна в своем конструкторе. Он делает это, как вы правильно заметили, с помощью метода Create()
.
Поэтому для меня имеет больше смысла, учитывая то, как работает MFC, уничтожать B
, когда уничтожается A
(A::OnDestroy
), поэтому я думаю, что вы идете по правильному пути.