E-gradiva > Računalništvo > Programiranje > Načrtovanje in razvoj programskih aplikacij > Objektno programiranje > Polimorfizem > Čisto virtualne funkcije

Prijava

Čisto virtualne funkcije

 

 

virtual void izracunaj_ploscino() const  =  0;

 

Funkcijo izracunaj_ploscino lahko napravimo čisto virtualno za razred lik. Funkcija omogoča polimorfno definicijo funkcije za vsakega izmed izpeljanih razredov, hkrati pa definira razred lik kot abstraktni razred, ki ga ne moremo uporabiti za tvorjenje objektov. To tudi pomeni, da moramo funkcijo izracunaj_ploscino redefinirati v vsakem razredu, ki ga izpeljemo iz razreda lik  –  kar pa je tudi smiselno, saj v razredu  lik nimamo podatkov za izračun ploščine.

 

Čisto virtualne funkcije moramo redefinirati v vseh izpeljanih razredih, navadne virtualne pa ne. Kadar izpeljani razred nima redefinirane navadne virtualne funkcije, se bo klicala funkcija nadrazreda.