문제

From http://stdcxx.apache.org/doc/stdlibref/less-equal.html

--

You can pass a less_equal object to any algorithm that requires a binary function. For example, the sort() algorithm can accept a binary function as an alternate comparison object to sort a sequence. less_equal would be used in that algorithm in the following manner:

vector<int> vec1;
sort(vec1.begin(), vec1.end(),less_equal<int>());

--

Now I am confused, is the documentation above correct ?

도움이 되었습니까?

해결책

You are right, std::sort requires the comparer to define a strict weak ordering.

Which means that std::less_equal should not be used with std::sort. It can still be used with a number of other standard algorithms though, which take a binary function and which do not have the strict weak ordering requirement.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top