在C ++中具有矢量的双链表构造函数

时间:2018-10-08 20:48:39

标签: c++ data-structures struct constructor

我是c ++的新手,正在从事涉及向量和双向链表的赋值。我得到了这样的结构。

struct Node {
std::vector<T> data;
Node<T>* next;
Node<T>* prev;
Node(): next(nullptr), prev(nullptr){} };

现在我需要在另一个类中为该Node创建一个构造函数,以用于各种方法。我了解该结构已经具有next和prev的初始化列表,我认为我只是在考虑构造函数应该是什么。

Class LinkedVector {
Node<T>* head;

LinkedVector<T>::LinkedVector(){
    head = NULL;
    }
}

这是构造链表的正确方法吗?同样,我是c ++的新手,指向正确方向的任何帮助对您都非常有帮助。谢谢,祝你有美好的一天。

1 个答案:

答案 0 :(得分:0)

是的,这几乎是正确的,您想将head设置为nullptr而不是NULL。

然后,当您创建添加到列表的方法时,您需要检查它是否为空,如果是,则初始化head而不是在其他位置添加元素。