Есть функция
template<class T1.class T2>
T2 func(const T2& val)
{
cout<<val;
}
Хочется сделать частичную специализацию, к примеру
template <>
double func<double,class T2>func(const T2& val)
{
....
string str=func<string,T2>(val);
}
Но выдается ошибка при компиляции
'operator<<' not implemented in type 'std::ostream' for arguments of type 'T2'
Компилятор bcc 5.5.1
То есть он, скорей всего, определяет что T2 это тип конкретного объекта, а не параметер шаблона
Как исправить?
Может есть обходные пути?