Što je klasa predložaka u C ++?

Klasa predložaka kao što ime sugerira je predložak za klase. C ++ pruža nam način na koji možemo stvoriti klasu koja će služiti kao nacrt / predložak za buduće klase. Klasa predložaka imat će generičke varijable i metode tipa „T“ koje se kasnije mogu prilagoditi za korištenje s različitim vrstama podataka prema zahtjevu.

definicija

Prema standardnoj definiciji, klasa predloška u C ++ je klasa koja programeru omogućuje rad s generičkim vrstama podataka. To omogućava da se klasa koristi na mnogim različitim tipovima podataka prema zahtjevima bez potrebe za ponovnim pisanjem za svaku vrstu.

Razumijevanje klase predloška u jeziku C ++

Ako za bolje razumijevanje smatramo primjerom klase predloška u stvarnom svijetu, to možemo smatrati nacrtom. Ako graditelj nekretnina dizajnira grad, priprema izgled stanova koji uključuje općenite specifikacije poput tlocrta, postavljanja vrata, prozora itd. Ovaj nacrt može se smatrati klase predloška koja će nam dati općenito ideja kako će izgledati stan iz veće slike. Ovo se može koristiti za dizajn pojedinačnih stanova koji se mogu prilagoditi vlastitim preferencijama koje će biti specifične za taj stan, ali generički će obrazac ostati uobičajen u cijelom gradu.

Klasa predložaka radi u sličnim linijama. Ako projektiramo aplikaciju za tvrtku, imat će više cjelina koje će predstavljati klase. Svaka klasa imat će svoja specifična svojstva i metode. Međutim, može se dizajnirati predložak koji će uspjeti te entitete umetnuti u bazu podataka. Ovaj ćemo primjer upotrijebiti u narednim odjeljcima ovog članka. Ali ako ne koristimo klasu predloška, ​​morat ćemo napisati pojedinačne klase za operacije Izrada, Dohvaćanje, Ažuriranje, Brisanje. Međutim, pomoću klase predloška možemo ovaj posao obaviti pisanjem samo jedne klase, čime se smanjuje puno vremena i uklanja mogućnost suvišnog duplikata koda.

Kako klasa predložaka u C ++ čini rad tako lakim?

Kada rade na poslovnoj aplikaciji, programeri se većinom suočavaju sa scenarijem u kojem se programska struktura postaje komplicirana kako se povećava broj klasa modela. Složenost se dodatno dodaje kada implementiramo OOPS koncepte kao što su nasljeđivanje i polimorfizam. U takvim scenarijima, klase predložaka dolaze u vrlo povoljnoj fazi gdje možete smanjiti retke koda koje želite napisati za izvođenje nekih operacija koje će ostati iste u više klasa / entiteta.

Što možete učiniti s razredom predložaka u C ++?

Korištenje klasa predložaka može smanjiti složenost koda definiranjem generičkih operacija koje će se izvoditi u klasi predloška i upotrebom te klase predloška s više vrsta podataka za dobivanje potrebnih rezultata.

Na primjer, ako pišemo program za kalkulator koji će imati metode koje uzimaju 2 ulazna parametra, može izvesti zbrajanje, oduzimanje, množenje i dijeljenje i vratiti nam izlaz.

Pretpostavimo da je početni zahtjev bio samo razvijati takav program za rad s prirodnim brojevima. U tu svrhu ste upravo napisali razred sa predloškom u nastavku.

Kalkulator klase:

(

javnost:

unsigned Add (nenapisani num1, unsigned num2) ()

nepotpisani oduzimanje (nenapisani broj1, nenapisani broj2) ()

nenapisani Množi (nenapisani broj1, nenapisani broj2) ()

nepotpisana podjela (nepotpisani broj1, nenapisani broj2) ()

);

Sada uz promjenu zahtjeva, od vas se traži da izvršite slične operacije za sve cjelobrojne brojeve (negativne i pozitivne), kao i decimalne tipove (duge).

S trenutnom klasom napisat ćete dvije dodatne klase ili urediti ovu klasu kako biste dodali slične funkcije za dugo i u vrste podataka.

Međutim, ako bismo koristili klasu predloška, ​​definirat ćemo samo 1 klasu predložaka koja će raditi na generičkom tipu podataka, a vrsta podataka povratne vrijednosti i ulazni parametri bit će određeni na temelju je li prenesena nepotpisana varijabla ili ako ste prolazak dugih ili int vrsta podataka:

predložak

Kalkulator klase:
(

Javnost:

T Dodaj (T num1, T num2) ()

T oduzimanje (T num1, T num2) ()

T Pomnoži (T num1, T num2) ()

T Podijeli (T num1, T num2) ()

);

Rad sa razredom predložaka u C ++

Iz primjera Kalkulatora u gornjem odjeljku, možemo upotrijebiti ovu generičku klasu kalkulatora u našoj glavnoj funkciji ili bilo kojem drugom području našeg programa s različitim tipovima podataka kao što slijedi:

Void main () (

Dugi rezultatDugi = Kalkulator.Dodaj (20, 7, 18, 2);

Int resultInt = Kalkulator.Add (10, -15);

Nenigned resultUnsigned = Calculator.Add (10, 18);

)

Ovdje će se vrsta podataka T definirana u klasi Generic utvrditi na temelju vrste podataka ulaznih parametara proslijeđenih funkcijama.

Prednosti klase predloška u C ++

Glavne prednosti korištenja klase predloška su kako slijedi:

  1. Trebate definirati samo 1 klasu koja će raditi s različitim vrstama podataka.
  2. U vrijeme sastavljanja, instance ove klase predloška generiraju se samo za one vrste podataka za koje je klasa predloška korištena u programu.

Na primjer, ako u gornjem primjeru koristimo samo klasu predložaka s int tipom podataka, prevoditelj će stvoriti instancu samo int tipa podataka, stoga štedi prostor koji bi bio korišten implementacijama Long i Nepodpisanih vrsta podataka da smo napisali pojedinačne časove za svakog.

  1. Kao što smo već vidjeli, stvaranje i upotreba klase predloška smanjit će napore i retke koda za razvoj, a također će smanjiti složenost i vrijeme u uklanjanju pogrešaka u programu za bilo koja pitanja, jer radite samo s 1 klasom.

Potrebna klasa predložaka u C ++ vještinama

Stvaranje i korištenje klasa predložaka vrlo je jednostavno i ne zahtijeva da imate napredne vještine programiranja u C ++. Sve što trebate učiniti je analizirati klase koje će imati zajedničke funkcije i stvoriti klasu predložaka za sve njih.

Zašto bismo trebali koristiti klasu predloška u jeziku C ++?

Uvijek bismo trebali pokušati uključiti klase predložaka u svoje programe kada radimo na poslovnoj aplikaciji koja se u budućnosti može mijenjati i rasti. To će nam pomoći u budućnosti kada radimo na proširenju funkcionalnosti programa, tada shvaćamo da će se većim dijelom već upravljati pomoću predložaka i kad aplikacija postane složena tijekom vremena, kôd će i dalje ostati kompaktan i razumljivo svima koji gledaju u programu.

Zašto nam je potrebna klasa predložaka u jeziku C ++?

Klasa predložaka djeluje kao spremnik koji dolazi vrlo zgodno kada će više klasa obavljati istu funkciju na sličan način za različite vrste podataka. Ovaj će spremnik omotati funkcionalnost u jednom entitetu koji se prema zahtjevu može koristiti za različite vrste podataka.

Druga uobičajena upotreba za klasu predložaka može biti kada se traži implementacija struktura podataka poput povezane liste, snopi, redovi čekanja za podršku različitih vrsta podataka. Te će strukture podataka slijediti isti pristup za pomicanje, iskočenje i pomicanje elemenata bez obzira na vrstu podataka i stoga se mogu koristiti primjenom klase predloška.

Kako će vam ova tehnologija pomoći u razvoju karijere?

Imati dobro znanje i praktične koncepte poput klase predloška ono će vas što odvojiti kao programera za poslovnu aplikaciju od programa koji je samo naučio programirati i možda se neće moći odmah prilagoditi velikoj aplikaciji za poduzeća u najoptimiziraniji način.

To će vam također omogućiti pisanje kodova uz bolju razumljivost i proširivost.

Zaključak

Prilikom rada i programiranja na bilo kojem jeziku naš bi cilj uvijek trebao biti podržati ponovnu upotrebu našeg koda čineći ga što je moguće generičkijim, zadržavajući ga modularnim i kompaktnim. Klase predloga su sjajan način da se to postigne za klase sa zajedničkim sličnim funkcijama.

Preporučeni članak

Ovo je vodič za Što je klasa predložaka u C ++ ?. Ovdje smo raspravljali o prednostima zajedno s potrebom klase predloška u jeziku C ++. Možete pogledati i sljedeće članke da biste saznali više -

  1. Predložak na Javi
  2. Web predlošci HTML
  3. Što je ExpressJS?
  4. Što je istraživačko ispitivanje?

Kategorija: