rendered paste bodyvoid deleteDivision()
{
int division;
bool exists;
cin >> division;
if(division >= 0)
{
exists = database.deleteDivision(division);
if(exists == false)
{
cout << "Error: no Division with number ";
cout << division << " exists." << endl;
}
}
}
bool DivisionList::deleteDivision(int divNum)
{
DivisionNode* temp = head;
DivisionNode* prev = NULL;
bool exists = true;
if(head == NULL)
exists = false;
while (temp != NULL)
{
if (temp->getDivisionNum() == divNum)
{
temp->deleteAll();
exists = true;
break;
}
prev = temp;
temp = temp->getNext();
}
if(temp == NULL)
exists = false;
else if(temp == head)
{
head = head->getNext();
delete temp;
exists = true;
}
else
{
prev->setNext(temp->getNext());
delete temp;
exists = true;
}
return exists;
}
void DivisionNode::deleteAll()
{
employees.deleteAll();
}
void EmployeeList::deleteAll()
{
if(head == NULL)
return;
EmployeeNode* temp = head;
EmployeeNode* prev = NULL;
while(temp!= NULL)
{
prev = temp;
temp = temp->getNext();
head = temp;
delete prev;
}
}