品味:重写代码,排除特例,覆盖所有情况
差品味:
remove_list_entry(entry)
{
prev = NULL;
walk = head;
while (walk != entry){
pre = walk;
walk = walk->next;
}
if (!prev)
head = entry->next;
else
prev->next = entry->next;
}
好品味:
remove_list_entry(entry)
{
indirect = &head;
while ((*indirect) != entry)
indirect = &(*indirect)->next;
*indirect = entry->next;
}