Я сделал эту функцию, чтобы я мог переключаться между 2 узлами для моего связанного списка. Тем не менее, я обнаружил эту ошибку в своем коде, которая делает мою программу cra sh полностью. Сначала я не инициализировал tempNode1, поэтому он дал мне предупреждение. Я инициализировал его значением NULL, и теперь он выдает предупреждение C6011 с разыменовывающим указателем NULL. Я все равно скомпилировал несмотря на предупреждение и программа вылетает. Я запустил отладчик, и он будет работать, пока, наконец, не достигнет строки объявления tempNode1. Я не уверен, где я ошибаюсь в своем коде:
void Records::swapNodes(node* node1, node* node2) {
node* tempNode1 = nullptr;
tempNode1->ID = node1->ID;
tempNode1->first = node1->first;
tempNode1->last = node1->last;
tempNode1->DOB = node1->DOB;
tempNode1->GPA = node1->GPA;
node1->ID = node2->ID;
node1->first = node2->first;
node1->last = node2->last;
node1->DOB = node2->DOB;
node1->GPA = node2->GPA;
node2->ID = tempNode1->ID;
node2->first = tempNode1->first;
node2->last = tempNode1->last;
node2->DOB = tempNode1->DOB;
node2->GPA = tempNode1->GPA;
}
Любая обратная связь будет принята с благодарностью. Спасибо!