Я пытаюсь специализировать функцию в специализации шаблона класса, но не могу понять правильный синтаксис:Явная специализация шаблона функции для полностью специализированного шаблона класса
template< typename T >
struct Foo {};
template<>
struct Foo<int>
{
template< typename T >
void fn();
};
template<> template<>
void Foo<int>::fn<char>() {} // error: too many template-parameter-lists
Здесь я m пытается специализировать fn
для char
, который находится внутри Foo
специализируется на int
. Но компилятору не нравится то, что я пишу. Какой должен быть правильный синтаксис?
Удивительно, но сообщение об ошибке компилятора был на месте. –