Я пытаюсь создать связанный список, который больше похож на связанный список C, но он не удаляет узел навсегда. Когда я распечатываю связанный список после запуска функции, узел все еще там. Почему моя функция удаления узла фактически не удаляет узел?
bool removeFromList(int delID, node* &head){
node* temp = new node;
node* curr = head;
while(curr != NULL && curr->id != delID){
temp = curr;
curr = curr->next;
}
if(curr == NULL){
cout << delID << " was not in the has table." << endl;
return false;
}
else{
node* next = curr->next;
cout << "Node with id " << curr->id << " was deleted." << endl;
delete curr;
curr = NULL;
temp->next = next;
return true;
}
}