template<class InIt1, class InIt2>
pair<InIt1, InIt2> mismatch(InIt1 first, InIt1 last, InIt2 x);
template<class InIt1, class InIt2, class Pred>
pair<InIt1, InIt2> mismatch(InIt1 first, InIt1 last,
InIt2 x, Pred pr);
The first template function determines the lowest value of N
in the range [0, last1 - first1)
for which the
predicate !(*(first1 + N) == *(first2 + N))
is true. It then returns pair
(first1 + N, first2 + N)
. If
no such value exists, N
has the value last1 - first1
. The function evaluates the predicate once, at most, for each N
.
The second template function behaves the same, except that the predicate is pr(*(first1 + N), *(first2 +
N))
.