Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of Boost. Click here to view this page for the latest version.

Minmax_element complete synopsis

Synopsis of <boost/algorithm/minmax.hpp>

#include <boost/tuple/tuple.hpp>

namespace boost {

  template <class T>
  tuple<T const&, T const&> >
  minmax(const T& a, const T& b);

  template <class T, class BinaryPredicate>
  tuple<T const&, T const&> >
  minmax(const T& a, const T& b, BinaryPredicate comp);

}

Synopsis of <boost/algorithm/minmax_element.hpp>

#include <utility> //for std::pair

namespace boost {

  template <class ForwardIterator>
  std::pair<ForwardIterator,ForwardIterator>
  minmax_element(ForwardIterator first, ForwardIterator last);

  template <class ForwardIterator, class BinaryPredicate>
  std::pair<ForwardIterator,ForwardIterator>
  minmax_element(ForwardIterator first, ForwardIterator last,
                 BinaryPredicate comp);

  // Variants

  template <class ForwardIterator>
  ForwardIterator first_min_element(ForwardIterator first, ForwardIterator last);

  template <class ForwardIterator, class BinaryPredicate>
  ForwardIterator first_min_element(ForwardIterator first, ForwardIterator last,
                                    BinaryPredicate comp);

  template <class ForwardIterator>
  ForwardIterator last_min_element(ForwardIterator first, ForwardIterator last);

  template <class ForwardIterator, class BinaryPredicate>
  ForwardIterator last_min_element(ForwardIterator first, ForwardIterator last,
                                   BinaryPredicate comp);

  template <class ForwardIterator>
  ForwardIterator first_max_element(ForwardIterator first, ForwardIterator last);

  template <class ForwardIterator, class BinaryPredicate>
  ForwardIterator first_max_element(ForwardIterator first, ForwardIterator last,
                                    BinaryPredicate comp);

  template <class ForwardIterator>
  ForwardIterator last_max_element(ForwardIterator first, ForwardIterator last);

  template <class ForwardIterator, class BinaryPredicate>
  ForwardIterator last_max_element(ForwardIterator first, ForwardIterator last,
                                   BinaryPredicate comp);

  template <class ForwardIterator>
  std::pair<ForwardIterator,ForwardIterator>
  first_min_first_max_element(ForwardIterator first, ForwardIterator last);

  template <class ForwardIterator, class BinaryPredicate>
  std::pair<ForwardIterator,ForwardIterator>
  first_min_first_max_element(ForwardIterator first, ForwardIterator last,
                             BinaryPredicate comp);

  template <class ForwardIterator>
  std::pair<ForwardIterator,ForwardIterator>
  first_min_last_max_element(ForwardIterator first, ForwardIterator last);

  template <class ForwardIterator, class BinaryPredicate>
  std::pair<ForwardIterator,ForwardIterator>
  first_min_last_max_element(ForwardIterator first, ForwardIterator last,
                             BinaryPredicate comp);

  template <class ForwardIterator>
  std::pair<ForwardIterator,ForwardIterator>
  last_min_first_max_element(ForwardIterator first, ForwardIterator last);

  template <class ForwardIterator, class BinaryPredicate>
  std::pair<ForwardIterator,ForwardIterator>
  last_min_first_max_element(ForwardIterator first, ForwardIterator last,
                             BinaryPredicate comp);

  template <class ForwardIterator>
  std::pair<ForwardIterator,ForwardIterator>
  last_min_last_max_element(ForwardIterator first, ForwardIterator last);

  template <class ForwardIterator, class BinaryPredicate>
  std::pair<ForwardIterator,ForwardIterator>
  last_min_last_max_element(ForwardIterator first, ForwardIterator last,
                            BinaryPredicate comp);

}


Last modified 2002-07-01

© Copyright Hervé Brönnimann, Polytechnic University, 2002--2004. Use, modification, and distribution is subject to the Boost Software License, Version 1.0. (See accompanying file License_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)