这个东西见仁见智,没有一定之规,一般符合使用习惯就好。
头指针指向首元素的前一个位置,则在使用时必须先调用next,才能取得合法元素
同理尾指针指向尾元素的下一个位置,在使用时必须先调用prev。
这样的用法有时候方便在while循环里使用,比如:
Type* pItem = queue.Head();
while (pItem = pItem.Next())
{
// do something
}
如果是头指针指向首元素的话:
Type* pItem = queue.Head();
while (pItem)
{
// do something
pItem = pItem.Next();
}
和用法有关,当然一般倾向于头指下一个,尾指正,比较方便
尾指针队尾还有元素么??