![]() |
Home | Libraries | People | FAQ | More |
template<class ForwardRange> typename range_return<ForwardRange, return_begin_found>::type unique(ForwardRange& rng); template<class ForwardRange> typename range_return<const ForwardRange, return_begin_found>::type unique(const ForwardRange& rng); template<class ForwardRange, class BinaryPredicate> typename range_return<ForwardRange, return_begin_found>::type unique(ForwardRange& rng, BinaryPredicate pred); template<class ForwardRange, class BinaryPredicate> typename range_return<const ForwardRange, return_begin_found>::type unique(const ForwardRange& rng, BinaryPredicate pred); template<range_return_value re, class ForwardRange> typename range_return<ForwardRange, re>::type unique(ForwardRange& rng); template<range_return_value re, class ForwardRange> typename range_return<const ForwardRange, re>::type unique(const ForwardRange& rng); template<range_return_value re, class ForwardRange, class BinaryPredicate> typename range_return<ForwardRange, re>::type unique(ForwardRange& rng, BinaryPredicate pred); template<range_return_value re, class ForwardRange, class BinaryPredicate> typename range_return<const ForwardRange, re>::type unique(const ForwardRange& rng, BinaryPredicate pred);
unique removes all but
the first element of each sequence of duplicate encountered in rng.
Elements in the range [new_last,
end(rng))
are dereferenceable but undefined.
Equality is determined by the predicate if one is supplied, or by operator==()
for ForwardRange's value
type.
Defined in the header file boost/range/algorithm/unique.hpp
For the non-predicate versions of unique:
ForwardRange is a
model of the Forward
Range Concept.
ForwardRange is mutable.
ForwardRange's value
type is a model of the EqualityComparableConcept.
For the predicate versions of unique:
ForwardRange is a
model of the Forward
Range Concept.
ForwardRange is mutable.
BinaryPredicate is
a model of the BinaryPredicateConcept.
ForwardRange's value
type is convertible to BinaryPredicate's
first argument type and to BinaryPredicate's
second argument type.
Linear. O(N)
where N is distance(rng).
Exactly distance(rng)
comparisons are performed.