Может кто-нибудь помочь мне с этим кодом. Я пытаюсь специализировать метод. В настоящее время он не работает с одной специализацией (1), но в конечном итоге я хотел бы иметь много специализаций (2, 3, 4, 5 и т. Д.)
class X
{
public:
// declaration
template< int FLD >
void set_native( char *ptr, unsigned int length );
// specialisations
template<> void set_native< 1 >( char *ptr, unsigned int length )
{
}
};
Я получаю сообщения об ошибках ..
x.cpp: 13: ошибка: явная специализация в области отсутствия пространства имен «класс X»
x.cpp: 13: ошибка: идентификатор шаблона 'set_native <1>' для 'void set_native (char *, unsigned int)' не соответствует ни одному объявлению шаблона
x.cpp: 13: ошибка: недопустимое объявление функции