Home | Libraries | People | FAQ | More |
template<class SinglePassRange1, class SinglePassRange2> std::pair< typename range_iterator<SinglePassRange1>::type, typename range_iterator<const SinglePassRange2>::type > mismatch(SinglePassRange1& rng1, const SinglePassRange2& rng2); template<class SinglePassRange1, class SinglePassRange2> std::pair< typename range_iterator<const SinglePassRange1>::type, typename range_iterator<const SinglePassRange2>::type > mismatch(const SinglePassRange1& rng1, const SinglePassRange2& rng2); template<class SinglePassRange1, class SinglePassRange2> std::pair< typename range_iterator<SinglePassRange1>::type, typename range_iterator<SinglePassRange2>::type > mismatch(SinglePassRange1& rng1, SinglePassRange2& rng2); template<class SinglePassRange1, class SinglePassRange2> std::pair< typename range_iterator<const SinglePassRange1>::type, typename range_iterator<SinglePassRange2>::type > mismatch(const SinglePassRange1& rng1, SinglePassRange2& rng2); template< class SinglePassRange1, class SinglePassRange2, class BinaryPredicate > std::pair< typename range_iterator<SinglePassRange1>::type, typename range_iterator<const SinglePassRange2>::type > mismatch(SinglePassRange1& rng1, const SinglePassRange2& rng2, BinaryPredicate pred); template< class SinglePassRange1, class SinglePassRange2, class BinaryPredicate > std::pair< typename range_iterator<const SinglePassRange1>::type, typename range_iterator<const SinglePassRange2>::type > mismatch(const SinglePassRange1& rng1, const SinglePassRange2& rng2, BinaryPredicate pred); template< class SinglePassRange1, class SinglePassRange2, class BinaryPredicate > std::pair< typename range_iterator<SinglePassRange1>::type, typename range_iterator<SinglePassRange2>::type > mismatch(SinglePassRange1& rng1, SinglePassRange2& rng2, BinaryPredicate pred); template< class SinglePassRange1, class SinglePassRange2, class BinaryPredicate > std::pair< typename range_iterator<const SinglePassRange1>::type, typename range_iterator<SinglePassRange2>::type > mismatch(const SinglePassRange1& rng1, SinglePassRange2& rng2, BinaryPredicate pred);
mismatch
finds the first
position where the corresponding elements from the two ranges rng1
and rng2
are not equal.
Equality is determined by operator==
for non-predicate versions of mismatch
, and by satisfying pred
in the predicate versions.
Defined in the header file boost/range/algorithm/mismatch.hpp
For the non-predicate versions:
SinglePassRange1
is a model of the Single
Pass Range Concept.
SinglePassRange2
is a model of the Single
Pass Range Concept.
SinglePassRange1
's
value type is a model of the EqualityComparableConcept
.
SinglePassRange2
's
value type is a model of the EqualityComparableConcept
.
SinglePassRange1
s
value type can be compared for equality with SinglePassRange2
's
value type.
For the predicate versions:
SinglePassRange1
is a model of the Single
Pass Range Concept.
SinglePassRange2
is a model of the Single
Pass Range Concept.
BinaryPredicate
is
a model of the BinaryPredicateConcept
.
SinglePassRange1
's
value type is convertible to BinaryPredicate
's
first argument type.
SinglePassRange2
's
value type is convertible to BinaryPredicate
's
second argument type.
distance(rng2) >= distance(rng1)
Linear. At most distance(rng1)
comparisons.