0
2d 연결된 목록에서 작업 중이며 연결된 목록 각각이 오른쪽과 아래를 가리키면 내 프로그램에서 그 때마다 예외가 발생하여 읽기 액세스 위반이 발생합니다. 은 0xCDCDCDCD였습니다. 4 행에서 b = a-> next 예외가 발생했습니다.2d 연결된 목록 소멸자
LinkedList::~LinkedList()
{
nodePtr a = head;
nodePtr b = a->next;
nodePtr c = down;
nodePtr d = c->bottom;
while (a != NULL)
{
nodePtr temp = a->next;
nodePtr temp1 = c->bottom;
delete a;
delete c;
a = temp;
c = temp;
}
}에도이 코드가 제대로 작동하는지 랬
'a'가 null이 아닌지 확인하고 있습니다. 'c'는 어떨까요? 또한 어떤 라인에서 예외가 발생합니까? – AlexG
더 일찍 초기화하는 것을 잊었습니다. – molbdnilo
값 '0xcdcdcdcd'는 Visual Studio와 디버거에서 일반적으로 초기화되지 않은 전역 메모리를 표시하는 데 사용됩니다 (예 : [이 MSDN 참조] (https://msdn.microsoft.com/en-us/library/aa260966(v=vs) .60) .aspx)). 즉, 해당 값을 가진 변수가 있으면이를 제대로 초기화하지 않은 것입니다. 생성자에서'nullptr'에 대한 포인터를 놓치고 있습니까? –