#include<iostream>
#include<string>
#include<memory>
using namespace std;
//独有指针版的链表,带头结点
template<typename T>
struct Node
{
public:
T data;
//利用独有指针定义指向下一个节点的指针
unique_ptr<Node<T>>next;
~Node()
{
cout << "~node" << "\n";
}
};
template<typename T>
class Link
{
public:
//头插法
void front
利用unique_ptr写一个链表(理解智能指针的自动释放功能)
本文通过使用unique_ptr展示了如何构建一个带头结点的链表,并详细解释了智能指针如何自动释放内存,析构过程中释放了包括头结点在内的六个节点。
摘要由CSDN通过智能技术生成