因此,我正在使用虚拟节点实现LinkedList,以分别表示列表的前面和后面(保持为空(或_head和_tail))。
我试图创建一个将元素插入链表前面的推送功能,但由于某种原因我不断收到错误。
这是代码
void push(const T& x)
{
if (count == 0)
{
_head->_next = _tail;
}
// Creates a new node with the user input data.
Node* current = new Node;
current->_data = x;
current->_next = _head->_next;
_head->_next = current;
count++;
}
Count是一个实例变量,用于跟踪列表的大小,默认为0.而_data是分配给当前节点的数据值。
由于某种原因,编译器声明head-> _next指向null,因此它不能将值赋给current。但我认为这个问题将通过在开头添加if语句来处理。
有什么建议吗?
提前致谢!