One problem with this code is you're calling delete on a pointer that you haven't checked to be NULL.
No, he doesn't. Due to the while() condition variable 'conductor' cannot be null when delete is called.
You get a seg fault when you're at the last node in the list and calling delete on the next pointer which is NULL.
No he doesn't, deleting null pointers is safe.
The real problem with this code is:
Code:
while(conductor != NULL)
{
temp_conductor = conductor->next; /* If temp_conductor becomes NULL... */
delete conductor; /* (delete works anyway) */
conductor = temp_conductor; /* conductor becomes NULL too... */
conductor = conductor->next; /* so 'conductor->next' = (null)->next = seg fault */
}