Виртуальная функция - Большая Энциклопедия Нефти и Газа, статья, страница 4
Если третье лезвие бреет еще чище, то зачем нужны первые два? Законы Мерфи (еще...)

Виртуальная функция

Cтраница 4


Если класс имеет виртуальные функции, определяйте деструктор также виртуальным, даже если это и не требуется в данном конкретном случае. Производные от него классы могут иметь свои деструкторы, и тогда вызываться будут именно они.  [46]

Полиморфизм реализуется посредством виртуальных функций. Если при использовании виртуальной функции запрос осуществляется с помощью указателя базового класса ( или ссылки), то C выбирает правильную переопределенную функцию в соответствующем производном классе, связанном с данным объектом.  [47]

Интересным следствием использования виртуальных функций и полиморфизма является простота и ясность программ. В них становится меньше фрагментов с ветвлением и больше обычного линейного кода.  [48]

Если при использовании виртуальной функции запрос осуществляется с помощью указателя базового класса ( или ссылки), то C выбирает правильную переопределенную функцию в соответствующем производном классе, связанном с данным объектом.  [49]

Интересным следствием использования виртуальных функций и полиморфизма является то, что программы приобретают более простой вид. Они включают меньше логических ветвлений и больше простого последовательного кода. Это упрощение облегчает тестирование, отладку и сопровождение программ.  [50]

Чтобы идея использования виртуальных функций была понятнее, в данной программе этот метод раскрыт наиболее явно и четко.  [51]

Для поддержания работы виртуальных функций создается виртуальная таблица, что увеличивает потребление памяти программой и время выполнения программы. Если в программе используется небольшой класс, от которого не производятся подклассы, то в использовании виртуальных функций нет никакого смысла.  [52]

Полиморфизм обеспечивается механизмом виртуальных функций.  [53]



Страницы:      1    2    3    4