Последовательность вызова конструктора / деструктора в наследовании - PullRequest
0 голосов
/ 09 мая 2020

Почему порядок конструкторов, вызываемых при наследовании, обратный, чем вызовы деструкторов? По какой-либо конкретной c причине?

1 Ответ

4 голосов
/ 09 мая 2020

Да, есть. Порядок конструкторов: base, derived. Это гарантирует, что конструктор для derived может полагаться на правильную инициализацию base во время работы конструктора derived.

Порядок деструкторов: derived, base. Это гарантирует, что derived может полагаться на то, что base все еще действителен, пока деструктор derived работает.

...