Tjena! Jag försöker skapa en list class baserad på sammankopplade noder. Så här ser Remove funktionen ut:
void Sorted_List::remove(int value)
{
Node* tmp = first;
Node* old = tmp;
if (first->data == value)
{
tmp = first->next;
delete first;
first = tmp->next;
}
else
{
while (tmp->data != value)
{
if (tmp->next == nullptr)
{
return;
}
old = tmp;
tmp = tmp->next;
}
old->next = tmp->next;
delete tmp;
}
size_of_list -= 1;
}
Den fungerar så länge jag inte försöker ta bort det första objektet i listan, då går den inte att köra. Vad gör jag fel?