정렬 된 연결된 목록이 있고 사용자가 nameToSearch에 전달하는 모든 내용을 삭제하는 함수를 만들려고합니다. 하지만 난 계속 오류가 발생합니다. 아래는 내가 지금까지단일 정렬 된 연결 목록에서 요소 제거 C++
void deleteProduct(NodePtr head, char* nameToSearch)
{
NodePtr nodeUnderEdit = findNodeByName(head, nameToSearch);
if (nodeUnderEdit == NULL)
{
cout<<"\n ERROR: Product not found \n";
}
else
{
delete nodeUnderEdit;
nodeUnderEdit = nodeUnderEdit->next;
}
}
리스트가 단독으로 링크되어있는 경우,'find'는 발견 된 요소 바로 앞에 * 요소에 대한 포인터를 리턴해야합니다. –
nodeUnderEdit이 바로 그'delete' 연산자 바로 다음 (아주 짧게)을 가리키고 있는지 생각해보십시오. – WhozCraig
@KerrekSB +1 또는 해당 노드를 참조하는 포인터의 * 주소 *를 반환하고 수정하십시오. – WhozCraig