Итак, у меня есть этот класс шаблонов, который как бы подобен одностороннему списку.Функции типа класса шаблона
template <typename T> List
и имеют эту внутреннюю функцию печати
public:
void Print();
, который, как вы можете догадаться, печатает содержимое списка от начала до конца; Однако, поскольку шаблон может принимать классы как T, можно представить себе, что для этих случаев мне понадобятся разные реализации Print(). Например, у меня есть еще один класс. Точка
class Point{
private:
int x, y;
public:
int getX();
int getY();
}
поэтому я хочу печать, специально предназначенную для очков. Я попытался это:
void List<Point>::Print();
но компилятор говорит мне
prototype for void List<Point> Print() doesn match any in class List<Point>
хотя
candidates are: from List<T> [with T = Point] void List<Point>::Print()
Для меня это похоже, то же fucntion. Что не так? И как мне написать T-специфичные функции класса шаблона?
'template <> void Список :: Печать()' –
AndyG