Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2006-07-11 18:12:18

"Peter Dimov" <pdimov_at_[hidden]> writes:

> Sean Parent wrote:
>>> This could have been avoided by defining a separate relation for
>>> set/map
>>> order, either as a function reachable via ADL, or as a function
>>> object, then
>>> making sure that it is defined for all standard value types.
>> Why is this necessary? std::less<> serves us well and avoids the
>> whole ADL mess.
> std::less is ambiguous. It could be that you wanted merely the function
> object representation of operator<, or it could be that you wanted the
> default map/set ordering relation. It is not clear which of the two
> std::less is supposed to be.

If shared_ptr doesn't support operator< it's not a problem, is it?
You only get into trouble, AFAICT, when operator< and less are both
available but they do different things.

Dave Abrahams
Boost Consulting

Boost list run by bdawes at, gregod at, cpdaniel at, john at