Re: Function f(lb,x,ub); equivalent to min(ub,max(lb,x)); ?

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance



On Feb 26, 2:47 am, David Wilkinson <no-re...@xxxxxxxxxxxx> wrote:
MrAsm wrote:
<CODE>

template <typename T>
T Clamp( T lower, T x, T upper )
{
if ( x < lower )
return lower;
else if ( x > upper )
return upper;
else
return x;
}

Mr Asm:

I would prefer to use const T& (like std::min() and std::max() do). I
would also get rid of the else's:

template <typename T>
const T& Clamp( const T& lower, const T& x, const T& upper )
{
if ( x < lower )
return lower;
if ( x > upper )
return upper;
return x;

}

What does the very first 'const' do?

Thanks for the suggestions, David.
Harvey

.



Relevant Pages