模板程序在执行期间崩溃

时间:2017-11-25 17:15:31

标签: c++ if-statement doubly-linked-list nullptr

我正在使用模板在C ++中实现Doubly Linked List。当我尝试模板时。

template <class T>
class DList{
    Node<T> *head;
    Node<T> *tail;
    public:
        Dlist(){
            head = tail = nullptr;
        }       
        void addToHead(T el){
            Node<T> *newNode = new Node<T>(el);
            if(head == nullptr){
                head = tail = newNode;
            }
            else{
                head -> prev = newNode;
                newNode -> next = head;
                head = newNode;
            }
        } };

使用此addToHead()时,if条件未执行。程序崩溃了。

1 个答案:

答案 0 :(得分:0)

他们错误的是构造函数,这只是一个错字。因为headtail指针没有初始化,并且{add}指针与addToHead()的if条件中的head进行比较,程序崩溃了