виртуальное наследование



Автор Andrew Pil задал вопрос в разделе Другие языки и технологии

Виртуальное наследование С++ и получил лучший ответ

Ответ от Ilia[гуру]
Виртуальную функцию надо определять, если нет ее реализации по умолчанию (в базовом классе она объявлена как чисто виртуальная). Поскольку для класса D есть две реализации виртуальной функции (из B и C), то непонятно какую функцию использовать при вызове, поэтому в D ее нужно переопределить (чтобы разрешить неоднозначность) или убрать множественное наследование
Поскольку виртуальная функция переопределена в В и С, то для классов B, C и D неважно будет ли в А метод чисто виртуальным или нет, но для A это имеет значение: если класс А имеет хотя бы одну чисто виртуальную функцию, то он становится абстрактным, то есть нельзя будет создать его экземпляр

Ответ от Капитан Гугл[гуру]
Ключевое слово virtual

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: Виртуальное наследование С++

для чего нужны виртуальные функции в C+/+?
Современные программы могут насчитывать десятки тысяч классов, которые связаны между собой
подробнее...

ООП: что такое инкапсуляция, абстракция, полиморфизм и наследование?
инкапсуляция - включение в класс данных (или других классов) с ограничением доступа к ним.
подробнее...

С++ виртуальный метод
Например:
Есть класс Window. Стандартный виндовый какой-нить. Или из какой-нить библиотеки
подробнее...

Расскажите, для чего вобще нужны Виртуальные методы?
Читай:

Виртуальный метод (виртуальная функция) — в объектно-ориентированном
подробнее...

Виртуальные функции в c#,зачем они?
override означает перекрывание одноименного метода/свойства класса-потомка. по сути замена этим
подробнее...
Ответ от 3 ответа[гуру]
Привет! Вот еще темы с похожими вопросами:
спросили в Borland
microsoft.net framework, Зачем это надо, и что будет, если я удалю это с компа???
.NET Framework — программная технология от компании Microsoft, предназначенная для создания обычных
подробнее...
спросили в Наивность
Объектно ориентированное программирование. (ООП)
Так никто нормально и не ответил!
Три признака ООП: инкапсуляция, наследование и полиморфизм.
подробнее...

Каких лошадей называют чалыми?
В Германии, например, используется термин, означающий в переводе на английский «permanent gray»
подробнее...

что такое объект? (в информатике)


Объект в программировании — некоторая сущность в виртуальном пространстве, обладающая
подробнее...
спросили в Eclipse
microsoft .net framework 2.0 что это и для чего, устанавливаю игру запрашивает восстановить, удалить microsoft .net fram
NET Framework — программная технология от компании Microsoft, предназначенная для создания обычных
подробнее...
спросили в C Sharp
В чем отличие С++ от С, С#, и С#.Net и какое отношение к ним имеет Sharp
С это подмножество С++. То есть изучив С++ вы должны без проблем понимать С.

Грубо
подробнее...

Что такое "интерфейс"? Вот, я читаю - "IDisposable - это такой интерфейс..."... и Что такое IDisposable?
Интерфейс - такое хитрое наследование, которое отражает некий аспект поведения, в отличие от
подробнее...
спросили в Java API
Что такое Фреймворк???
Framework — термин, имеющий размытое значение. Обычно используется в программировании, обозначая
подробнее...
спросили в Мутации
Зелёные глаза-тоже мутация или разновидность голубых?
Карие глаза - при наличии красителя - меланина. Цвет красителя - коричневый, разных тонов - зависит
подробнее...
Виртуальное наследование на Википедии
Посмотрите статью на википедии про Виртуальное наследование
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*