|
Boost : |
Subject: Re: [boost] [Review:Algorithms] Order of args to clamp
From: Vicente J. Botet Escriba (vicente.botet_at_[hidden])
Date: 2011-09-26 13:51:29
Le 26/09/11 13:36, Dave Abrahams a écrit :
>
> Note: you can solve that problem by asking the caller to do the
> conversion ;-)
>
I'm not sure this could always be the desired interface for the caller.
When I want to clip an 22 bit integer to a 16 bit integer, I expect the
result be a 16 bit integer. So in these cases the result type will be
the types of lo and hi.
int v;
short lo,hi;
short res= clamp(v, lo,hi);
And in this case I can not convert the 22 bits integer to a 16 bit
because I would lost some essential information.
short res= clamp(short(v), lo,hi); // not the expected behavior
That means that I will need to convert to the
short res= short(clamp(v, int(lo),int(hi)));
Best,
Vicente
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk