我遇到了如何在双重链接列表到达双端队列结束时退出循环的问题。如果双端队列中有一个元素,它将返回它的位置。如果没有,它将在双端队列结束时返回迭代器。我非常感谢你的帮助。谢谢
这是我的搜索功能
unique_ptr<DequeIterator<E>> find(E match)
{
assert(!is_empty());
// the iter will begin from the head.
unique_ptr<DequeIterator<E>> iter(iter_begin());
// Here is where I do not know how to get it quit when
// it gets to the end of the deque.
// ALSO it needs to check the value at the end of
// the deque before it quits too.
while(iter->value() != match)
{
iter->next();
}
return iter;
}
答案 0 :(得分:3)
当然只是:
while( iter != iter_end() &&
iter->value() != match )
{
iter->next();
}
return iter;