gpt4 book ai didi

c++ - 链表 pop() 函数

转载 作者:行者123 更新时间:2023-11-28 03:57:51 24 4
gpt4 key购买 nike

考虑以下列表:

[LinkNode * head -- LinkNode * node1 -- LinkNode * node2]

我正在创建一个 FIFO 堆栈。我调用 pop() 来弹出 node1。

LinkNode::LinkNode(int numIn) {
this->numIn = numIn;
next = null;
}
.
.
.
int LinkNode::pop() {
Link * temp = head->next;
head = temp->next;
int popped = head->nodeNum;
delete temp;
Return numOut;

问题:
1) head 应该是一个指针或者一个LinkNode *?
2) Link * temp 是在调用堆栈上创建的,当 pop 完成时不会自动删除 temp?
3) 我的主要困惑是 temp->next 的值是多少?这是否指向等于 node2 的 node1.next?

感谢您的帮助?

我的引用资料是 Weiss 的 C++ for Java Programmers。

最佳答案

  1. LinkNode * 是一个指针。所以我不确定你在问什么。
  2. 变量超出范围,但这不会自动删除动态分配的数据。在 C++ 中,如果您动态分配数据(调用 new),则需要释放它(调用 delete)

关于c++ - 链表 pop() 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2702487/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com