Mis on malliklass klassis C ++?

Malliklass, nagu nimigi viitab, on klasside mall. C ++ pakub meile viisi, kuidas saame luua klassi, mis toimib tulevaste klasside kavandina / mallina. Malli klassil on üldised muutujad ja T-tüüpi meetodid, mida saab hiljem kohandada kasutamiseks vastavalt nõudele erinevate andmetüüpidega.

Definitsioon

Nagu standardmääratlus, on malliklass C ++ klass, mis võimaldab programmeerijal töötada üldiste andmetüüpidega. See võimaldab klassi vastavalt vajadusele kasutada paljudel erinevatel andmetüüpidel, ilma et oleks vaja iga tüübi jaoks uuesti kirjutada.

C ++ malliklassi mõistmine

Kui vaatleme malli klasside paremaks mõistmiseks reaalse maailma näidet, võime seda käsitleda kavas. Kui kinnisvaraehitaja kavandab alevikku, koostab ta korterite paigutuse, mis sisaldab üldisi tehnilisi kirjeldusi, nagu põrandaplaan, uste, akende paigutus jne. Seda projekti võib pidada malliklassiks, mis annab meile üldise ülevaate idee, kuidas korter suuremal pildil välja näeb. Selle abil saab kujundada individuaalseid kortereid, mida saab kohandada vastavalt omaniku eelistustele, mis konkreetsele korterile omased on, kuid üldine mall jääb üldiseks kogu linnas.

Malli klass töötab sarnastel ridadel. Kui me kavandame ettevõtte rakendust, on sellel mitu üksust, mis klasse esindavad. Igal klassil on oma konkreetsed omadused ja meetodid. Siiski saab kujundada malli, mis õnnestub need üksused andmebaasi sisestada. Kasutame seda näidet selle artikli järgmistes osades. Kuid kui me malli klassi ei kasuta, peame kirjutama üksikud klassid toimingute loomiseks, toomiseks, värskendamiseks ja kustutamiseks. Kuid malliklassi abil saame selle töö tehtud, kirjutades ainult ühe klassi, vähendades sellega palju aega ja eemaldades võimaluse liigseks dubleerivaks koodiks.

Kuidas teeb C ++ malliklass töötamise nii lihtsaks?

Ettevõtterakenduse kallal töötades seisavad programmeerijad enamasti stsenaariumi all, kus mudeli klasside arvu suurenemisega muutub programmi struktuur keerukaks. Keerukus lisandub veelgi, kui rakendame OOPS-i kontseptsioone nagu pärimine ja polümorfism. Selliste stsenaariumide korral on malliklassid väga kasulikud, kus saate vähendada koodiridasid, mida soovite kirjutada, et teostada mõnda toimingut, mis jääb mitme klassi / üksuse jaoks samaks.

Mida saate teha malliklassiga C ++?

Malli klasside kasutamisel saab koodi keerukust vähendada, määratledes malliklassis tehtavad üldised toimingud ja vajalike tulemuste saamiseks kasutage seda malliklassi mitme andmetüübiga.

Näiteks kui kirjutame kalkulaatoriprogrammi, millel on meetodid, mis võtavad 2 sisestusparameetrit, saab seda teha liitmisel, lahutamisel, korrutamisel ja jagamisel ning tagastades meile väljundi.

Eeldame, et algne nõue oli töötada välja selline programm ainult naturaalarvudega töötamiseks. Sel eesmärgil kirjutasite lihtsalt klassi, millel on allpool toodud mall.

Klassi kalkulaator:

(

avalik:

allkirjastamata Lisa (allkirjastamata number1, allkirjastamata number2) ()

allkirjastamata lahutamine (allkirjastamata num1, allkirjastamata num2) ()

allkirjastamata Korruta (allkirjastamata number1, allkirjastamata number2) ()

allkirjastamata Jaga (allkirjastamata number1, allkirjastamata number2) ()

);

Nõude muutumisega palutakse teil teha sarnased toimingud nii täisarvude (negatiivsed ja positiivsed) kui ka kümnendtüüpide (pikad) korral.

Praeguse klassiga kirjutate kaks lisaklassi või redigeerite seda klassi, et lisada sarnased funktsioonid pikkadeks ja ka andmetüüpideks.

Kui me aga kasutaksime malliklassi, määratleme ainult ühe malliklassi, mis töötab üldise andmetüübi korral ning tagastamise väärtuse ja sisestusparameetrite andmetüüp määratakse vastavalt sellele, kas allkirjastamata muutuja on möödunud või kui olete pika andmeside tüübi edastamine:

Mall

Klassi kalkulaator:
(

Avalik:

T lisa (T num1, T num2) ()

T lahuta (T num1, T num2) ()

T korrutage (T num1, T num2) ()

T jagage (T num1, T num2) ()

);

Töö malliklassiga C ++

Ülaltoodud jaotise kalkulaatori näitest saame kasutada seda kalkulaatori üldklassi oma põhifunktsioonis või muus meie programmi piirkonnas, kasutades järgmisi andmetüüpe:

Tühi peamine () (

Pikk tulemusLong = Kalkulaator.Lisa (20, 7, 18, 2);

Int tulemusInt = Kalkulaator.Lisa (10, -15);

Allkirjastamata tulemusUnsigned = Calculator.Add (10, 18);

)

Siin määratakse üldklassis määratletud T andmetüüp funktsioonidele edastatud sisendparameetrite andmetüübi põhjal.

C ++ malliklassi eelised

Malliklasside kasutamise peamised eelised on järgmised:

  1. Peate määratlema ainult 1 klassi, mis töötab erinevate andmetüüpidega.
  2. Kompileerimise ajal genereeritakse see malliklass ainult nende andmetüüpide jaoks, mille jaoks malliklassi on programmis kasutatud.

Näiteks kui ülaltoodud näites kasutame ainult malliklassi koos int-andmetüübiga, loob kompilaator ainult int-andmetüübi eksemplari, säästes sellega ruumi, mida oleks pikkade ja allkirjastamata andmetüüpide rakendamisel ära kasutatud, kui oleksime kirjutanud individuaalsed klassid igale.

  1. Nagu juba nägime, vähendab malliklassi loomine ja kasutamine arendamisega seotud pingutusi ja koodiridasid ning vähendab ka kõigi probleemide korral programmi silumise keerukust ja aega, kuna töötate ainult ühe klassiga.

Vajalik malliklass C ++ oskustes

Malli klasside loomine ja kasutamine on väga lihtne ning see ei eelda, et teil peaks olema C ++ programmeerimisoskusi. Kõik, mida peate tegema, on analüüsida klasse, millel on ühised funktsioonid, ja luua neile kõigile malliklass.

Miks peaksime C ++-s kasutama malliklassi?

Peame alati proovima lisada mallid oma programmidesse, kui töötame ettevõtte rakenduse kallal, mis võib tulevikus muutuda ja kasvada. See aitab meil tulevikus, kui töötame programmi funktsioonide laiendamise kallal, siis mõistame, et suurt osa tööst haldavad juba malliklassid ja kui rakendus aja jooksul keerukaks muutub, jääb kood ikkagi kompaktseks ja kõigile arusaadav kõigile, kes programmi vaatavad.

Miks me vajame malliklassi C ++?

Malliklass toimib konteinerina, mis on väga mugav, kui mitu klassi täidavad sama funktsiooni eri andmetüüpide puhul sarnaselt. See konteiner mähistab funktsionaalsuse ühte üksusesse, mida saab vastavalt nõudele kasutada erinevat tüüpi andmetüüpide jaoks.

Teine malliklassi tavaline kasutusviis võib olla andmestruktuuride, näiteks lingitud loendi, virnade, järjekordade loomine erinevate andmetüüpide toetamiseks. Need andmestruktuurid järgivad elementide tõukamise, hüpikluse ja liikumise korral sama lähenemisviisi, sõltumata andmetüübist, ja seetõttu saab neid kasutada malliklassi rakendamisel.

Kuidas see tehnoloogia aitab teid karjäärikasvus?

Heade teadmiste ja praktiliste kontseptsioonide, näiteks malliklassi tundmine eraldab teid ettevõtte rakenduste programmeerijana programmist, mis on alles programmeerimise selgeks õppinud ja võib-olla ei suuda ta suurettevõtte rakendusega kohe kohaneda. kõige optimeeritud viisil.

See võimaldab teil ka paremini arusaadavaid ja laiendatavaid koode kirjutada.

Järeldus

Mis tahes keeles töötades ja programmeerides peaks meie eesmärk olema alati toetada meie koodi korduvkasutatavust, muutes selle võimalikult üldiseks, hoides selle moodulina ja kompaktsena. Malli klassid on suurepärane viis selle saavutamiseks klasside puhul, millel on ühised sarnased funktsioonid.

Soovitatav artikkel

See on olnud juhend teemale Mis on malliklass C ++-s ?. Siin oleme arutanud eeliseid koos malliklassi vajadusega C ++ -s. Lisateabe saamiseks võite vaadata ka järgmisi artikleid -

  1. Mall Java keeles
  2. Veebimallide HTML
  3. Mis on ExpressJS?
  4. Mis on uurimuslik testimine?

Kategooria: