CPP
cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <iostream>
#include <memory>
using namespace std;
struct node
{
node(int id) : p_id(id), next(nullptr){}
~node() { std::cout << "deleting node with data " << p_id << "\n"; }
int p_id;
unique_ptr<node> next;
};
int main()
{
//head : 1-->null
unique_ptr<node> head = make_unique<node>(1);
//head : 1-->2-->null
{
node* temp = head.get();
while (temp->next)
temp = temp->next.get();
temp->next = make_unique<node>(2);
}
//head : 1-->2-->3-->null
{
node* temp = head.get();
while (temp->next)
temp = temp->next.get();
Enter to Rename, Shift+Enter to Preview
OUTPUT
Run