Salve a tutti,
sto cercando di realizzare una funzione template membro di una classe, che prende in input qualsiasi tipo di dato su cui è implementato l'operatore "<<" e stampi a video.
Ecco il codice del file header
e dell'implementazionecodice://Debugger.h namespace debugger { . . . class Debugger { public: . . . template<typename T> void Debugger::scrivi(T m ); . . . }; }
Per richiamare la funzione faccio così:codice:using namespace debugger; template<typename T> void Debugger::scrivi(T m ) { cout<<m; }
Ottengo un errore in fase di link per ogni chiamata alla funzione templatecodice:Debugger d(); d.scrivi<int>(10); d.scrivi("ciao");
main.cpp||undefined reference to `void debugger:: Debugger::scrivi<int>(int)'|
main.cpp||undefined reference to `void debugger:: Debugger::scrivi<char const*>(char const*)'|
Non riesco a capire dov'è il problema.
Ringrazio anticipatamente

Rispondi quotando