Я работаю над назначением, в котором я должен перегрузить оператор вставки, чтобы взять объект Node. Я создал функцию перегрузки оператора вне определения класса, но внутри файла node.h. Все компилируется отлично, но перегруженный оператор не вызывается, вместо этого я получаю простой адрес объекта.C++ Вставка оператора перегрузки (<<)
Мне запрещено изменять код вызова, поэтому любые изменения должны быть перегружены оператором.
Мой код, как он стоит прямо сейчас:
/** OPERATOR << ***********************************/
template<class T>
inline std::ostream & operator << (std::ostream & out, const Node <T> *& pHead)
{
out << "INCOMPLETE";
return out;
}
Прямо сейчас, я просто хочу, чтобы обеспечить перегруженный оператор называется. Я исправлю выходной код, как только узнаю, что я вызываю правильный оператор.
Вызывающий код:
// create
Node <char> * n = NULL;
// code modifying n
// display
cout << "\t{ " << n << " }\n";
'соиЬ << * п, 'было бы простое решение –
Это верно, но, как говорится, я не могу изменить код вызова. – ThomasNichols89
извините, пропустите эта часть. –