C++에서 iterator에대한 질문입니다.

liebeym의 이미지

     13         template<typename IterType, typename elemtype>
     14 IterType find(IterType first, IterType last, const elemtype value)
     15 {
     16         I
     17         for(; first != last ; ++first )
     18                 if(value == first->i )
     19                         return first;
     20         return last;
     21 }
     22 

값을 찾으면 찾은 iterator를 return 하거나 없으면 last값을 return합니다.
그런데 만약에 값이 없을시에 NULL 이나 0등 딴것을 return 하게 할 수 없습니까??
MackTheKnife의 이미지

질문하시는 의도가 찾지 못하였을때를 알기위해서라면

값이 없을때는 last를 리턴하므로 end()를 사용하여 리턴값이 last인지 체크할수 있읍니다..

A.find(asdfs) == A.end()