|
Boost Users : |
Subject: Re: [Boost-users] [range] signature discrepancy between equal_range and upper_bound
From: Marshall Clow (mclow.lists_at_[hidden])
Date: 2011-12-06 14:29:34
On Dec 6, 2011, at 11:17 AM, giecrilj_at_[hidden] wrote:
>> Re: signature discrepancy between equal_range and upper_bound
>>
>>> The algorithm equal_range takes the Value by constant reference
>>> while the algorithm upper_bound takes Value by value.
>>> Why is that? =A0(Note that standard algorithms take a constant reference.)
>>
>> Sorry to be obtuse, but... are you talking about a Boost library? If
>> so, which one?
>
> <URL: file:///usr/share/doc/packages/boost-1.44.0/libs/range/doc/html/range/reference/algorithms/non_mutating/upper_bound.html >
I think what the OP is saying is that in the STL, we have:
equal_range ( ForwardIterator first, ForwardIterator last, const T& value );
and upper_bound ( ForwardIterator first, ForwardIterator last, const T& value );
but in Boost.Range, we have:
equal_range ( Range &r, const T& value );
and upper_bound ( Range &r, T value );
And he's wondering why boost::range::upper_bound takes its' parameter by value.
Is that correct?
-- Marshall
Marshall Clow Idio Software <mailto:mclow.lists_at_[hidden]>
A.D. 1517: Martin Luther nails his 95 Theses to the church door and is promptly moderated down to (-1, Flamebait).
-- Yu Suzuki
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net