-
[c++]Funzioni template
Non sono sicuro che si possa fare,anche se mi sembra strano.
io ho una classe template
Code:
template <typename _T> class classe_A {
public:
_T valore;
};
voglio poter passare un oggetto della classe A ad una funzione f, il cui valore di ritorno è un template,scelgo io.
Code:
template <typename _P> _P funzione(classe_A classe_test){
_P tmp;
tmp=classe_test.value(); //Poniamo che value sia double e sto tmp un int, voglio il troncamento
return tmp;
}
sta cosa non funziona,c'è un modo per farlo andare?
-
Nonho capito bene, la funzione deve essere un metodo della classe template? Credo proprio di si, non credo tu possa fare altrimenti.
Comunque non mi pare tu possa far ritornare a una funzione template un valore template, ma ora controllo meglio.
-
no la funzione deve essere esterna. Quello che voglio fare in sintesi è una funzione che effetti in automatico il casting, gli passo la classe A con value int e voglio che ritorni double. o viceversa.
-
capito, quindi quando chiamio questa funzione dovresti passargli anche il tipo che vuoi come ritorno, giusto?
[Output: 4.77 Kb. compressed to 4.64 Kb. by saving 0.13 Kb. (2.62%)]