Pop_front双向链表功能问题

时间:2017-12-06 12:51:06

标签: c++ doubly-linked-list

我遇到了一个问题,一个函数可以从双向环的前面弹出元素。

template <typename Key, typename Info>
void Ring<Key, Info>::pop_front() {
if (!isEmpty()) {

    Node* p = any->next;
    if (any != NULL) {
    p->prev->next = p->next;
    p->next->prev = p->prev;
    delete p;
    }}}

定义函数begin()。 如你所见,它应该完美地工作,但它不是从第一个元素开始的。它弹出第二个。 该怎么办?如何指向第一个节点?

1 个答案:

答案 0 :(得分:0)

Node* p = any->next;更改为Node* p = any;