Olio-ohjelmointi C ++ - Osa 9 Johdanto Tämä on osa 9 minun sarja, Olio-ohjelmointi C ++. Ohjelmoinnissa, voit suunnitella ohjelman ja sitten joskus tulevaisuudessa toisen henkilön lisää jotain ohjelmaa. Painopiste tässä on suunnitella luokan, jossa on yksi tai useampi menetelmiä ilman määritelmää. Jonakin päivänä tulevaisuudessa joku perivät luokan muodossa se ja laittaa määritelmä menetelmän (tai menetelmät) peritty luokan. Sellainen luokka, joka on yksi tai useampia menetelmiä, ilman määritelmää kutsutaan abstrakti perustaa luokan.
Antaa luokan menetelmä määritelmä, sinun täytyy periä luokan siitä ja sitten johdettu luokka annat määritelmän toiminto (menetelmä). Voit sitten instantiate ja käyttää esineitä johdettu luokka eikä esineitä perustaa luokan (abstrakti perustaa luokan). Tässä artikkelissa selitän toiminnan abstraktin perustaa luokan C ++. Huomautus: Jos et näe koodia tai jos luulet jotain puuttuu (rikki linkki, kuva poissa), vain yhteyttä minuun [email protected]. Eli minuun yhteyttä pienintäkään ongelmaa olet mitä luet.
Tiivistelmä Base Class abstrakti perustaa luokan on luokan ns puhdasta virtuaalista toimintoa. Puhdas virtuaalinen funktio on funktio (menetelmä), että ei ole täytäntöönpanoa (eli se ei ole määritelmää, toisin sanoen sillä ei ole funktio elin aaltosulkeita). No, sinun täytyy tietää, miten käyttää tätä virtuaalista toimintoa. Kirjoittamalla on toteamaan edeltää avainsana, virtuaalinen; julistuksen saa arvon nolla. Seuraava koodi havainnollistaa kuvauksen abstrakti luokka, joka on puhdasta virtuaalista toimintoa.
# include using namespace std; luokan MyClass {julkinen: virtuaalinen int mthd () = 0; }; int main () {return 0; } Luokka on vain yksi toiminto; se on virtuaalinen funktio. Huomaa miten on on kirjoitettu. Se alkaa sanalla, virtuaalinen; tyhjä osoite on annettu ilmoitus sisällä alaluokan kuvauksen. Tahansa luokan puhdasta virtuaalista toimintoa kutsutaan abstrakti perustaa luokan. Jatkossa voit periä muihin luokkiin tämän luokan ja perinnöllinen (johdettu) luokat voisitte antaa menetelmä sen täytäntöönpanoa.
Täytäntöönpanoa Virtual toimintoa Perintö seuraava koodi perustaa luokan on abstrakti perustaa luokan. # include using namespace std; luokan Laskin {julkinen: int num1; int num2; int lisätä () {int summa = num1 + num2; palata summa; } Virtuaalinen int mthd () = 0; }; luokka ChildCalculator: julkinen Laskin {julkinen: int fixedVal; int neliö (int vastaus) {int finalVal = vastaus * vastaus + fixedVal; palata fi