
如图,我写的Findit函数想找到==name的就返回迭代器的位置,然后在第二段代码中使用
如果没找到==name的,返回的应该是l.end()
但是list类型的l初始没有内容,此时运行就报错了
此时end()会是什么?怎么改进才行
有没有类似bool类型的否定,让没找到==name时函数返回一个否定的迭代器?

有没有类似bool类型的否定,让没找到==name时函数返回一个否定的迭代器?
template<class _Ty, class _Ax>
_Ty * FindInList(std::list<_Ty, _Ax> &list, _Ty& Value)
{
std::list<_Ty, _Ax>::iterator Iter;
for(Iter = list.begin();
Iter != list.end();
Iter ++)
{
if(*Iter == Value)
return &*Iter;
}
return NULL;
}