在C++中max_element,如果有多个元素是最大的,它将返回第一个这样的元素.而minmax_element(C++ 11以上)返回最后一个max元素.
max_element
minmax_element
这种行为的标准是否有原因?
来自cplusplus.com
如果多个等效元素具有最大值,则第二个迭代器指向最后一个这样的元素. 比较是使用operator <作为第一个版本,或comp作为第二个版本; 如果没有其他元素没有比它少,则元素是最大的.如果多个元素满足此条件,则迭代器返回指向第一个这样的元素.
如果多个等效元素具有最大值,则第二个迭代器指向最后一个这样的元素.
比较是使用operator <作为第一个版本,或comp作为第二个版本; 如果没有其他元素没有比它少,则元素是最大的.如果多个元素满足此条件,则迭代器返回指向第一个这样的元素.
c++ stl c++11 c++14
c++ ×1
c++11 ×1
c++14 ×1
stl ×1