Koja je razlika između virtualne funkcije i čiste virtualne funkcije u C++?
Koja je razlika između virtualne funkcije i čiste virtualne funkcije u C++?

Video: Koja je razlika između virtualne funkcije i čiste virtualne funkcije u C++?

Video: Koja je razlika između virtualne funkcije i čiste virtualne funkcije u C++?
Video: Написание 2D-игр на C с использованием SDL Томаса Лайвли 2024, Svibanj
Anonim

Glavni razlika između ' virtualna funkcija" i "čista virtualna funkcija ' je li to ' virtualna funkcija ' ima svoju definiciju u bazna klasa, a također i naslijeđene izvedene klase je redefiniraju. The čista virtualna funkcija nema definiciju u osnovnu klasu, a sve naslijeđene izvedene klase moraju je redefinirati.

Na ovaj način, što je čista virtualna funkcija C++?

Čiste virtualne funkcije i apstraktne klase u C++ Ne možemo kreirati objekte apstraktnih klasa. A čista virtualna funkcija (ili sažetak funkcija ) u C++ je virtualna funkcija za koje nemamo implementaciju, samo to deklariramo. A čista virtualna funkcija se deklarira dodjeljivanjem 0 u deklaraciji.

Osim gore navedenog, što je virtualna funkcija i virtualna klasa? A virtualna funkcija je član funkcija unutar baze razreda koje redefiniramo u izvedenom razreda . Deklariše se pomoću virtualan ključna riječ. Kad razreda koji sadrži virtualna funkcija je naslijeđeno, izvedeno razreda redefinira virtualna funkcija da zadovolji svoje potrebe.

U tom smislu, što je virtualna i čista virtualna funkcija objasniti na primjeru?

A čista virtualna funkcija je funkcija koji se mora nadjačati u izvedenoj klasi i ne mora biti definiran . A virtualna funkcija proglašava se čist ” koristeći znatiželjnu sintaksu =0. Za primjer : klasa Base {

Čemu služe virtualne funkcije?

Virtualne funkcije osigurati da ispravan funkcija se poziva za objekt, bez obzira na vrstu reference (ili pokazivača) koji se koristi za funkcija poziv. Funkcije deklariraju se s a virtualan ključna riječ u osnovnoj klasi. Rješavanje od funkcija poziv se obavlja u vrijeme izvođenja.