Потоки ввода вывода в шаблоне классов - проблемма :(
От: Аноним  
Дата: 24.12.07 18:05
Оценка:
Сразу извиняюсь за мой французкий — но в терминах я могу путаться.

Суть проблеммы: не могу переопределить потоки ввода вывода для шабланна класов:



#include <iostream.h>
template <class T> 
class ddm 
{
/*
*/
template <class T> friend ostream& operator<<(ostream& r,const ddm <T>& aout);
};
template <class T> ostream& operator<< (ostream& r, const ddm <T>& aout)
{
}



выдает ошибки:

[C++ Error] cl_massiv.cpp(73): E2335 Overloaded 'operator ostream & << <char>(ostream &,const ddm<char> &)' ambiguous in this context
[C++ Error] cl_massiv.cpp(73): E2335 Overloaded 'operator ostream & << <char>(ostream &,const ddm<char> &)' ambiguous in this context

Вобщем я перерыл море инфы в сети, встречал около 5 видов записи данного переопределения — но не один у меня не заработал

Я делал и так
friend ostream& operator<<(ostream& r,const ddm <T>& aout);

получая
[Компоновщик Error] Unresolved external 'operator <<(_STL::basic_ostream<char, _STL::char_traits<char> >&, const ddm<char>&)' referenced from C:\DOCUMENTS AND SETTINGS\ÊÎÍÑÒÀÍÒÈÍ\ÐÀÁÎ×ÈÉ ÑÒÎË\ÍÎÂÀß ÏÀÏÊÀ (6)\CL_MASSIV.OBJ

и вообще много как, но решения проблыммы как вы понимаете так и не нашол...

пс среда разработки С++Builder
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.