C++0x std::minmax

に std::minmax が追加される

namespace std {
    template<class T>
    pair<const T&, const T&> minmax(const T& a, const T& b);

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

    template<class T, class... Args>
    pair<const T&, const T&> minmax(const T& a, const Args&... args);

    template<class T, class Compare>
    pair<const T&, const T&> minmax(const T& a, const T& b, Compare comp);

    template<class T, class U, class... Args>
    pair<const T&, const T&> minmax(const T& a, const U& b, const Args&... args);
}


戻り値は、first が min で、second が max の値になる


C++0x言語拡張まとめ