Я пытался выяснить, как создать стек на основе ссылок, и наткнулся на фрагмент кода, который я не совсем понимаю.
int pop()
{
// If the stack is empty return a sentinel value
if (isEmpty())
return -999;
// Get the data to return from the top of the stack
int intReturn = top->info;
// Create a pointer to keep track of the top node
IntSLLNode *temp;
temp = top;
// Move the top of the stack to the next element
// or null if there is no next element
top = top->next;
// Free up memory
delete temp;
// Send back the data
return intReturn;
...
}
Я понимаю до top=top->next
.
1) Какой смысл создавать временный узел, если мы его никогда не используем?
2) Перемещая верхний указатель на следующий узел, удаляем ли мы прежний верхний узел?Таким образом, появляется это?
Спасибо