Шаблон списка c++

есть двусвязный список, необходимо сделать для него шаблон, чтобы можно было взаимодействовать с разными типами данных, подскажите как правильно это сделать???

template <class V>
struct Node
{
    V data;
    Node* next;
    Node* prev;
};

template <class V>
Node* first(V d) 
{
    Node* pv = new Node;
    pv->data = d;
    pv->next = NULL;
    pv->prev = NULL;
    return pv;
};

ПОдчёркивает Node* с ошибкой: отсутствует список аргументов для "Node".


Ответы (1 шт):

Автор решения: Harry

Не забывайте, что просто Node нет, есть Node<V>

template <class V>
Node<V>* first(V d)
{
    Node<V>* pv = new Node<V>;
    pv->data = d;
    pv->next = NULL;
    pv->prev = NULL;
    return pv;
};
→ Ссылка