Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Ответы на контрольные вопросы по лекции 14

.docx
Скачиваний:
7
Добавлен:
20.06.2023
Размер:
15.89 Кб
Скачать

Ответы на контрольные вопросы по лекции 14

Дисциплина: объектно-ориентированное программирование

Студент: Заболотников М.Е.

Группа: 9373

  1. Что называется множественным наследованием?

Множественным наследованием называется наличие нескольких прямых базовых классов.

  1. Во что преобразуется дерево наследования при наличии механизма множественного наследования?

При таком раскладе дерево наследования преобразуется в направленный граф множественного наследования.

  1. Может ли один и тот же класс встречаться несколько раз в графе наследования и, если да, то есть ли ограничения?

Может. Однако есть ограничения: при множественном наследовании никакой класс не может больше одного раза использоваться в качестве непосредственного базового. Однако класс может больше одного раза быть непрямым базовым классом.

  1. Какие неоднозначности могут возникать при множественном наследовании и как они разрешаются?

При использовании множественного наследования могут возникать неоднозначности при доступе к одноименным компонентам разных базовых классов. Простейший и самый надежный способ устранения неоднозначностей - использование квалифицированных имен компонентов.

  1. Какой класс называется виртуальным?

Виртуальным называется непрямой базовый класс, который позволяет избежать дублирование объектов. В списке базовых классов перед именем такого класса необходимо поместить ключевое слово virtual.

  1. Почему один и тот же класс в графе наследования может быть как виртуальным, так и не виртуальным?

Размеры производных классов при отсутствии виртуальных базовых равны сумме длин их компонентов и длин унаследованных базовых классов. «Накладные расходы» памяти здесь отсутствуют. Помимо прочего, виртуальность класса в иерархии производных классов является не свойством класса как такового, а результатом особенностей процедуры наследования.