Boost logo

Boost :

From: Peter Dimov (pdimov_at_[hidden])
Date: 2003-10-30 06:53:19


David Abrahams wrote:
> "Thorsten Ottosen" <nesotto_at_[hidden]> writes:
>
>>> what it wrong with this and why do you want to use int instead?
>>
>> Basically I want to use int whereever posisble so I don't have to
>> worry about signed to unsiged conversions. The fact that the standard
>> library does so/allows just makes programming harder that it has to
>> be.
>
> A tendency to use ints everywhere makes that a self-fulfilling
> prophecy. You can turn on warnings to catch the problems. If you're
> consistent about using unsigned for unsigned numbers, as with const,
> you'll find that the actual cases where signed/unsigned conversions
> need to be performed a much fewer.

A rare case where I disagree with Dave. It is almost never necessary to use
unsigned types in numeric contexts (as opposed to bit fiddling), and there
are plenty of reasons to actively avoid them. For example, -1 / 4u or 1u
> -1. Unsigned types aren't "const correct" since the conversions are often
silent and safe.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk