» »

Šablone razredov

Šablone razredov

DubleG ::

Zdravo!

Zanima me ali se pravilno lotevam naloge in kako naj sestavim konstruktor...

Razred vsebuje polje ene dimenzije ter število elementov v polju (maksimalna velikost polja je 10). Velikost polja podajte razredu s parametrom.

template<class tip>
class Aritmetika
{
    private:
    int velikost;
    tip polje[velikost];
    
    public:
    Aritmetika(){};
    Aritmetika( ): ;


Glavni program pošlje:
double polje1[]={2,3,4.2,2.1};
Aritmetika<double> a1(polje1, (sizeof polje1/sizeof polje1[0]));

ter
string polje2[10]={"Medveda", "je", "v", "blizini", "gostilne", "Pod", "Roznikom", "uspavala", "intervencijska", "skupina"};

Aritmetika<string> a2(polje2, (sizeof polje2/sizeof polje2[0])); 

DubleG ::

Aritmetika(tip* pol, int vel): polje(pol), velikost(vel){};

Tole deluje. Na pamet. Ne vem pa zakaj?

BlueRunner ::

To je deklaracija konstruktorja, ki inicializira polje "polje" z vrednostjo zapisano v parametru "pol", polje "velikost" pa z vrednostjo zapisano v parametru "vel".

DubleG ::

Ok kul,hvala.

Zanima me, ali se specializacija razreda Aritmetika v primeru če so vhodni podatki tipa string naredi še kako drugače...
template <>
class Aritmetika<string> 


in potem se pač priredijo metode tako da se vsi tipi šablone zamenjajo s tipi, ki jih pač rabimo...

Torej, obstaja način, da se te metode znotraj razreda specializirajo še kako drugače, kot pa da se kopira cel razred?
lp in hvala


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[C] Funkcija vrnitev kazalca

Oddelek: Programiranje
101161 (877) MrStein
»

[PHP] empty array

Oddelek: Programiranje
91794 (1661) BigWhale
»

Datoteke c++ pomoč pri nalogi ...

Oddelek: Programiranje
61046 (894) vbknez
»

Branje binarne datoteke v polje znakov - C++

Oddelek: Programiranje
81766 (1634) Tutankhamun
»

kazalci in polje

Oddelek: Programiranje
51658 (1579) rasta

Več podobnih tem