head指向的node删除只是这个节点对应的内存,不代表全部。要删除全部节点,需要一个循环才可以的
void deleteLinkedList(LinkedList &list)
{
Node *p = list->first;
while (*p) {
Node *q = p;
p = p->next;
delete q;
}
list->first = nullptr;
list->size = 0;
}