» »

[C++] Šablone

[C++] Šablone

c0dehunter ::

Zdravo, za naredit imam naslednjo nalogo:
Napišite funkciji izpis, ki sprejmeta po tri parametre in izpišeta podatke naraščajoče oz. padajoče (glede na tip) (pomagaj si s šablonami).
izpisi(1.1, 2.1, 3.1);
izpisi(1, 2.1, 3.1);
izpisi(1.1, 2, 3.1);


Če je srednji argument tipa int, potem izpisujem po obratnem vrstnem redu (z y x) drugače pa kar povrsti (x y z).

Naredil sem takole:
#include <iostream>
using namespace std;
template <typename T1, typename T2, typename T3>

/*void izpisi(T1 x, int y, T3 z){
     cout<<x<<", "<<y<<", "<<z<<endl;
     }*/
     
void izpisi(T1 x, T2 y, T3 z){
     cout<<z<<", "<<y<<", "<<x<<endl;
     }

int main(){
 
 izpisi(1.1, 2.1, 3.1);
 izpisi(1, 2.1, 3.1);
 izpisi(1.1, 2, 3.1);
 
 system("PAUSE");
 return EXIT_SUCCESS;   
}


Prva funkcija izpisi je zakomentirana, ker zgleda da ne smeš dekalarirat več funkcij z istim imenom na tak način (sicer bi bilo to najlažje).

Potem sem poskusil še tako, da bi v drugi funkciji preverjal, če je T2==int, ampak to tudi nekako ne gre. Kaj delam narobe, naloga naj bi bila čisto preprosta?
I do not agree with what you have to say,
but I'll defend to the death your right to say it.

Jean-Paul ::

Kaj takega?
#include <iostream>

template <typename T1, typename T2, typename T3>
void izpisi(T1 x, T2 y, T3 z) {
	std::cout << 1 << std::endl;
}

template <typename T1, typename T3>
void izpisi(T1 x, int y, T3 z) {
	std::cout << 2 << std::endl;
}


int main() {
	izpisi(1, 2., 3.);
	izpisi(1., 2, 3.);
}

c0dehunter ::

Hvala, to sem rabu ;)
I do not agree with what you have to say,
but I'll defend to the death your right to say it.


Vredno ogleda ...

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

Pomoč Excel

Oddelek: Programska oprema
136384 (6071) mk766321
»

[c#] Meni s pomočjo switch stavka

Oddelek: Programiranje
5807 (746) Looooooka
»

Microsoft visual C++ pozabo kako zacet (strani: 1 2 )

Oddelek: Programiranje
754458 (2767) bisernik
»

[C++] Dve malo težji nalogi

Oddelek: Programiranje
162240 (1856) roli
»

[Java]Naloge iz zank

Oddelek: Programiranje
61285 (1201) SkIDiver

Več podobnih tem