Информация об изменениях

Сообщение Re[5]: Виртуальное наследование и возврат объекта от 11.11.2019 22:53

Изменено 11.11.2019 22:55 rg45

Re[5]: Виртуальное наследование и возврат объекта
Здравствуйте, _NN_, Вы писали:

_NN>Разве компилятор не должен брать конструкторы из класса FinalClass ?


Должен, но подобъект виртуального базового класс инициализируется в одном из most derived классе. Поэтому конструктор перемещения, объявленный в FinalClass не оказывает никакого влияния на удаленный конструктор перемещения класса Base. И тот отстается быть удаленным аж до самого FinalClassEx.
Re[5]: Виртуальное наследование и возврат объекта
Здравствуйте, _NN_, Вы писали:

_NN>Разве компилятор не должен брать конструкторы из класса FinalClass ?


Должен, но подобъект виртуального базового класса инициализируется в одном из most derived классов. Он не может быть проинициализирован в не most derived классе. Поэтому конструктор перемещения, объявленный в FinalClass не оказывает никакого влияния на удаленный конструктор перемещения класса Base. И тот отстается быть удаленным аж до самого FinalClassEx.