minmax

比较两个输入参数并返回将他们作为一对返回,以较大或较小排序。

template<class Type>
    pair<const Type&, const Type&>
        minmax(
            const Type& _Left, 
            const Type& _Right
        );
template<class Type, class BinaryPredicate>
    pair<const Type&, const Type&>
        minmax(
            const Type& _Left,
            const Type& _Right,
            BinaryPredicate _Comp
        );
template<class Type> 
    pair<Type&, Type&> 
        minmax(
            initializer_list<Type> _Ilist
        );
template<class Type, class BinaryPredicate> 
    pair<Type&, Type&> 
        minmax(
            initializer_list<Type> _Ilist, 
            BinaryPredicate _Comp
        );

参数

  • _Left
    比较的第一个对象。

  • _Right
    比较的第二个对象。

  • _Comp
    用于比较两个对象的二进制谓词。

  • _IList
    包含要比较的成员象的初始值设定项列表。

返回值

返回一对对象,第一个小,第二个大。 以 initializer_list为例,这对值为列表中的最小对象和最大对象。

备注

第一个模版函数返回 pair<const Type&, const Type&>(_Right, _Left),如果 _Right 小于 _Left。 否则,它将返回 pair<const Type&, const Type&>(_Left, _Right)。

第二个成员函数返回一对值,第一个对象跟小,第二个对象更大,当使用委托_Comp进行比较时。

余下的模板函数行为相同,除了他们用_IList取代_Left 和 _Right参数。

函数正确执行一次比较。

要求

标头: <算法>

命名空间: std

请参见

参考

minmax_element

min

min_element

max

max_element

<algorithm>

标准模板库