*   >> Læs Uddannelse artikler >> science >> programming

Abstrakt Base Class i C ++

num1 + num2; returnere sum; } Virtuel int mthd () = 0; }; klasse ChildCalculator: offentlig Lommeregner {public: int fixedVal; int firkant (int svar) {int finalVal = svar * svar + fixedVal; tilbage finalVal; } Int mthd () {cout}}; int main () {ChildCalculator myChildObj; myChildObj.mthd (); tilbage 0; } Læs og prøv ovenstående kode. Den forælder klassen er en abstrakt base klasse, fordi du har den rene virtuelle funktion, "virtuel int mthd () = 0;". Denne base klasse har andre medlemmer (egenskaber og metoder). Du har arvet klasse. I det nedarvede klasse, du har en ny metode.

Det, der interesserer os her, er, at i den nedarvede klasse, er den virtuelle funktion implementeres. Du implementere det som du ville gennemføre enhver anden funktion, bortset fra at du ikke har en forudgående klasse navn og omfang operatør, fordi du gør dette i beskrivelsen af ​​en nedarvet klasse. I hovedfunktion, den nedarvede klasse med funktionen gennemført, instantieres og anvendes. Bemærk: Du kan ikke instantiere en klasse fra en base abstrakt klasse, fordi det har en eller flere funktioner, der ikke er gennemført.

Du kan instantiere et objekt fra den tilsvarende afledte klasse, hvor de virtuelle funktioner (metoder) er blevet gennemført. Det er, hvad jeg har til abstrakte stamklasser. Lad os stoppe her og fortsætte i den næste del af serien. Chrys at nå frem til et hvilket som helst af de dele af denne serie, så skriv den tilsvarende titel nedenfor og mit navn, Chrys, i søgefeltet på denne side og klik på Søg (brug menuen, hvis de findes): OOP Basics i C ++ pegepinde til klasserne i C ++ konstruktører og destruktionsfunktioner i C ++ Klasser Arv i C ++ Klasser Access beregnere i C ++ Klasser Venner i C ++ klasser afledt klasse erklæringen og Access Projekteringsvejledning i C ++ Statiske medlemmer og dette søgeord i C ++ Klasser Abstrakt Base Class i C ++

Page   <<  [1] [2] 
Copyright © 2008 - 2016 Læs Uddannelse artikler,https://uddannelse.nmjjxx.com All rights reserved.