unique_copy

The function unique_copy is used to remove adjacent duplicates while copying.

  template<class InputIterator, class OutputIterator>
  OutputIterator unique_copy
  (InputIterator first, InputIterator last,
  OutputIterator result);
  template<class InputIterator, 
  class OutputIterator, class BinaryPredicate>
  OutputIterator unique_copy
  (InputIterator first, InputIterator last,
  OutputIterator result, BinaryPredicate pred);
  
Remarks

The end of the resulting range is returned.