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

Сообщение Re[6]: Множественное наследование интерфейсов от 04.06.2018 18:53

Изменено 04.06.2018 18:56 AlexGin

Re[6]: Множественное наследование интерфейсов
Здравствуйте, SaZ, Вы писали:

SaZ>Здравствуйте, AlexGin, Вы писали:


AG>>Я в курсе, что такое виртуальный базовый класс, но в данном случае — ТС наследует только от одного класса,

AG>>всё остальное — интерфейсы (абстрактные базовые классы). Множественного наследования реализаций — здесь нет.
AG>>Так что данная ссылка — не в тему.

SaZ>Совершенно чётко ясно, что порядок наследования определяет порядок инициализации полей класса и вызова конструкторов/деструкторов. Ваше утверждение что это не так — неверно.


У абстрактных базовых классов, выполняющих роль интерфейсов — полей нет.
Данное твоё высказывание, правильное в общем случае, здесь не актуально.

SaZ>В си++ пока ещё нет понятия интерфейса.

Это понятно, но в данном случае — роль интерфейса выполняет именно он.
Вопрос был — о конкретном куске кода, не надо уходить от вопроса!

SaZ>Это может быть договоренность в рамках конкретного проекта.


http://qaru.site/questions/80587/abstract-class-vs-interface-in-c

P.S. Здесь ставился именно конкретный вопрос, на который я дал верный ответ.
Дальнейшие теоретизирования с твоей стороны, только дополнительно показывают отсутствие практических возражений.
Re[6]: Множественное наследование интерфейсов
Здравствуйте, SaZ, Вы писали:

SaZ>Здравствуйте, AlexGin, Вы писали:


AG>>Я в курсе, что такое виртуальный базовый класс, но в данном случае — ТС наследует только от одного класса,

AG>>всё остальное — интерфейсы (абстрактные базовые классы). Множественного наследования реализаций — здесь нет.
AG>>Так что данная ссылка — не в тему.

SaZ>Совершенно чётко ясно, что порядок наследования определяет порядок инициализации полей класса и вызова конструкторов/деструкторов. Ваше утверждение что это не так — неверно.


У абстрактных базовых классов, выполняющих роль интерфейсов — полей нет (также как и конструкторов).
Насчёт деструкторов — да, вероятно, есть пустые вирт-деструкторы, но конкретно — отработает только тот, что в ConcreteClass.
Данное твоё высказывание, правильное в общем случае, здесь не актуально.

SaZ>В си++ пока ещё нет понятия интерфейса.

Это понятно, но в данном случае — роль интерфейса выполняет именно он.
Вопрос был — о конкретном куске кода, не надо уходить от вопроса!

SaZ>Это может быть договоренность в рамках конкретного проекта.


http://qaru.site/questions/80587/abstract-class-vs-interface-in-c

P.S. Здесь ставился именно конкретный вопрос, на который я дал верный ответ.
Дальнейшие теоретизирования с твоей стороны, только дополнительно показывают отсутствие практических возражений.