我正在尝试学习 C++,但我有一点困惑。
我从中学习的文本告诉我,如果我想删除一个类型的节点,const T&
我应该首先创建一个该节点类型的新指针,然后使用内置的 C++ 删除它delete[]
。但是,如果我只是将要删除节点的上一个元素的链接设置到要删除的节点的下一个元素的链接,会发生什么?就像是:
*p = node.previous;
p-> next = node.next;
或者这会导致内存泄漏吗?
我很困惑,因为我在其他地方读到永远不会删除指针,但我正在使用的示例代码具有以下内容:
Node<T> *p = node-to-be-deleted;
delete p;
删除节点的最佳方法是什么?