模板程序在执行期间崩溃
template program crashing during execution
我正在使用模板在 C++ 中实现双向链表。当我尝试使用模板时。
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条件没有执行。然后程序崩溃了。
他们的错误在于构造函数,这只是一个错字。因此,head
和 tail
指针未初始化,当在 addToHead() 的 if 条件下将 head
指针与 nullptr
进行比较时,程序崩溃.
我正在使用模板在 C++ 中实现双向链表。当我尝试使用模板时。
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条件没有执行。然后程序崩溃了。
他们的错误在于构造函数,这只是一个错字。因此,head
和 tail
指针未初始化,当在 addToHead() 的 if 条件下将 head
指针与 nullptr
进行比较时,程序崩溃.