我正在使用模板在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条件未执行。程序崩溃了。
答案 0 :(得分:0)
他们错误的是构造函数,这只是一个错字。因为head
和tail
指针没有初始化,并且{add}指针与addToHead()的if条件中的head
进行比较,程序崩溃了