Witam!
Pierwszy raz mi się to zdarzyło, ale napisałem funkcję usuwającą dowolny element z listy dwukierunkowej i kiedy go usunę to wypisują się bzdury, kiedy go po prostu wypnę z listy ale nie usunę operatorem delete to wszystko działa.
void usundowolny(node *&knot,init &list)
{
if(knot->prev)
{
knot->prev->next=knot->next;
}
else
{
list.head=knot->next;
}
if(knot->next)
{
knot->next->prev=knot->prev;
}
else
{
list.tail=knot->prev;
}
delete knot;
list.count--;
}