Гибкая API
Нужна помощь опытных программеров по С++. Суть в чем.. нужно написать связный список, который будет работать с различными структурами. Структуры могу быть разного типа, но в одном списке будут структуры одного типа. Как понял, структура, например, принимает два параметра, и эти параметры могут быть различного типа (int int, float float, int char и тд.)
У самого за плечами университетский курс питона и почти решенный курс по плюсам на stepik от яндекса. В целом научился неплохо решать математические задачи с помощью кода и заполнять двумерные массивы различными способами. Но данные знания не привели меня к решению.
Поэтому я в быстром темпе как губка начал впитывать в себя различную информацию, касающуюся данной задачи. Работа с указателями, классы, шаблонные функции и классы. Информацию я находил, и даже нашел решение с конкретной структурой (ссылка внизу). Не слабо помогли видео уроки с simplecode. Решил собрать всю информацию в кучу и написал данный код с наследованием класса:
template <typename T1, typename T2> // Создаем шаблонную структуру
class Node
{
protected:
T1 data;
T2 key;
Node* next; // указатель на следующую структуру
Node* prev; // на предыдущую
public:
//some code
};
template <typename T1, typename T2 > // создаем связный список
class List : public Node<T1,T2> // наследуем от шаблонной структуры
{
private:
Node *head; // указатель на начало списка // СТРОКА С ОШИБКОЙ (С2955)
Node *temp; // указатель на конечный узел списка
public:
List() : head(nullptr), temp(nullptr) { //первое создание связного списка
}
//some code
};
int main() {
List <int, int> a;
a.printList();
return 0;
}
Ругается ошибкой C2955 //для использования класс шаблон требуется список аргументов шаблон// (см. выше строку). Уверен, что проблема решается достаточно просто, но знаний пока не хватает. Буду на седьмом небе от счастья если люди пикабу подскажут путь к решению.