Ciao a tutti,
cerco di essere breve.
Ho una classe Node di tipo template di cui voglio ridefinire l'operatore << per poter utilizzare
codice:
Node<int>* nodx;
nodx.value = 20;
cout<<nodx<<endl;
Nel file Node.h ho scritto:
codice:
#include <iostream>
using namespace std;
template <typename T>
class Node
{
/* Overload operatori di streaming */
friend ostream & operator<<(ostream &out, const Node &node) {
return out<<node.value;
}
}
ma ciò non funziona: in output ho una stringa tipo 0x8d2500.
Cosa c'è di sbagliato?