*   >> läser Utbildning artiklar >> science >> programming

Abstrakt basklass i C ++

Objektorienterad programmering i C ++ - Del 9 Inledning Detta är en del 9 av min serie, objektorienterad programmering i C ++. I programmerings, kan du utforma ett program och sedan någon gång i framtiden en annan person kommer att lägga till något till programmet. Fokus här är att utforma en klass, där det finns en eller flera metoder utan definition. Someday i framtiden någon kommer att ärva en klass bildar det och sätta en definition för metoden (eller metoder) av den ärvda klassen. En sådan klass som har en eller flera metoder utan definition kallas en abstrakt basklass.

För att ge klassmetod en definition, måste du ärva en klass från det och sedan i härledda klassen du ger definitionen till funktionen (metoden). Du kommer då att initiera och använda föremål från den härledda klassen och inte föremål från basklassen (abstrakt basklass). I denna artikel kommer jag att förklara driften av abstrakt basklass i C ++. Obs: Om du inte kan se koden, eller om du tror att något saknas (bruten länk, bild frånvarande), bara att kontakta mig på [email protected]. Det vill säga, kontakta mig för minsta problem du har om vad du läser.

En abstrakt basklass En abstrakt basklass är en klass med vad som är känt som en ren virtuell funktion. En ren virtuell funktion är en funktion (metod) som inte har ett genomförande (det vill säga, det har inte en definition, med andra ord det inte har en funktion kropp i klammerparenteser). Tja, måste du veta hur man använder denna virtuella funktion. Typen har en förklaring som föregås av nyckelordet, virtuell; till deklarationen tilldelas värdet noll. Följande kod visar beskrivningen av en abstrakt klass som har en ren virtuell funktion.

#include using namespace std; klass MyClass {public: virtual int mthd () = 0; }; int main () {return 0; } Klassen har bara en funktion; det är den virtuella funktionen. Notera hur är har skrivit. Det börjar med ordet, virtuella; en noll adress har tilldelats deklarationen i klassbeskrivningen. Varje klass med en ren virtuell funktion kallas en abstrakt basklass. I framtiden kan du ärva andra klasser från den här klassen och de övertagna (härledda) klasser som du skulle ge metoden dess genomförande. Implementera en virtuell funktion genom arv I följande kod basklass är en abstrakt basklass.

#include using namespace std; klass Calculator {public: int num1; int num2; int lägga () {int summa = num1 + num2; retur summan; } Virtuell int mthd () = 0; }; klass ChildCalculator: public Calculator {pu

Page   <<       [1] [2] >>
Copyright © 2008 - 2016 läser Utbildning artiklar,https://utbildning.nmjjxx.com All rights reserved.