作为练习,我正在创建自己的名为 List 的容器类模板。它是一个基于模板的单端链表,节点是一个嵌套在列表本身中的结构,如下所示:
template<typename T>
class list
{
protected:
struct node
{
T data;
node* link;
};
node* head;
//Rest of the code after here
};
容器有两个构建列表的函数:push_front和pop_front。我设法弄清楚了 push_front 函数,但是我很难弄清楚如何编写 pop_front 函数。 pop_front 函数移除列表的头部并将列表中的下一个值设置为头部。我不知道实际的 pop_front 函数是如何工作的,所以我被困在这里。接下来我该做什么?
最佳答案
我不知道你会怎么写这个函数。至于我,我会这样写。
void pop_front()
{
if ( head )
{
node *tmp = head;
head = head->link;
delete tmp
}
}
关于c++ - 我将如何为列表编写 pop_front 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22751244/