Каква е разликата между виртуална функция и чиста виртуална функция в C++?
Каква е разликата между виртуална функция и чиста виртуална функция в C++?

Видео: Каква е разликата между виртуална функция и чиста виртуална функция в C++?

Видео: Каква е разликата между виртуална функция и чиста виртуална функция в C++?
Видео: Антишпионская утилита O&O ShutUp10++ для Windows 10 и 11 Русским языком 2024, Април
Anonim

Основното разлика между ' виртуална функция“и „чиста виртуална функция ' е това ' виртуална функция “има своето определение в базов клас, а също и наследяващите производни класове го предефинират. В чиста виртуална функция няма определение в базов клас и всички наследяващи производни класове трябва да го предефинират.

По този начин какво е чиста виртуална функция C++?

Чисти виртуални функции и абстрактни класове в C++ Не можем да създаваме обекти от абстрактни класове. А чиста виртуална функция (или абстрактно функция ) в C++ е виртуална функция за които нямаме реализация, ние само го декларираме. А чиста виртуална функция се декларира чрез присвояване на 0 в декларацията.

Освен по-горе, какво е виртуална функция и виртуален клас? А виртуална функция е член функция в рамките на базата клас които предефинираме в производно клас . Декларира се с помощта на виртуален ключова дума. Когато клас съдържащи виртуална функция се наследява, производното клас предефинира виртуална функция за да задоволи собствените си нужди.

В тази връзка, какво е виртуална и чиста виртуална функция, обяснявайте с пример?

А чиста виртуална функция е функция които трябва да бъдат отменени в производен клас и не е необходимо дефиниран . А виртуална функция е обявено за „ чист ” с помощта на любопитния синтаксис =0. За пример : class Base {

Каква е ползата от виртуалните функции?

Виртуални функции уверете се, че правилният функция се извиква за обект, независимо от типа препратка (или указател), използван за функция повикване. Функции са декларирани с a виртуален ключова дума в базовия клас. Разрешаването на функция обаждането се извършва по време на изпълнение.