我在链表中有一个节点定义为:
class Node {
public:
Node* next = nullptr;
int value;
};
我将节点插入到列表中:
void insertNode(Node* &head, int value) {
Node* newNode = new Node;
newNode->value = value;
newNode->next = head;
head = newNode;
}
我想在另一个函数中删除该列表中的一些节点
void deleteNode(Node* head) {
// ...
}
如何从内存中删除现在未使用的节点?
最佳答案
您将通过 1) delete
删除节点。 2) 将前一个节点调整为指向删除节点之后的节点(如果删除的节点是最后一个节点,则为 nullptr
)。
关于c++ - 如何从内存中删除动态添加的节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45649657/