Re: operator<< дла класса вложенного в шаблонный
От: Vladimir V. Alekseev  
Дата: 27.12.09 23:23
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Всем доброго времени суток.


А>Есть такая проблема, не могу перегрузить оператор << в такой ситуации:


... skiped ...

А>имеется ввиду оператор для A::B. Пытаюсь написать так:


... skiped ...

А>Компилятор (gcc 4.4.1) не находит подходящей функции для операции s << b. Причем описанной выше функции нет в кандидатах.

А>Как в таком случае можно перегрузить operator<< ?

Как исправить в данном случае operator<< — затрудняюсь сказать. А нельзя ли поправить f()? Если вынести описание этого метода за класс и написать после описания шаблонного operator<< вот таким образом:

template< template<class> class T>
void A<T>::f()
{
    operator<< <T>(std::cout,b);
}


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