struct Node { int const value; Node* next; }; int main() { Node* curr { new Node { 1, new Node { 2, new Node { 3, nullptr } } } }; curr->next->next->next = curr; Node* tmp { curr->next->next }; delete tmp; curr->next->next = curr; }