Re[5]: Беззнаковая арифметика
От: Пётр Седов Россия  
Дата: 15.10.06 21:52
Оценка: 1 (1) -2
Здравствуйте, Cyberax, Вы писали:
C>Аноним wrote:
>> Это большой соблазн: "раз переменная содержит только неотрицательные значения, то пусть будет unsigned". В эту ловушку уже попалось много программистов (включая меня) и, видимо, ещё много попадётся.
C>Есть случаи, когда без unsigned очень плохо. Например, при работе с флагами.
Да, но обратите внимание на тему: "Беззнаковая арифметика". Речь не о том, что unsigned опасен, а о том, что беззнаковая арифметика опасна. Если переменная типа unsigned интерпретируется не как целое число, а как последовательность битов, то беззнаковой арифметики нет.
Кстати, я не люблю флаги. Во-первых, не type-safe. Я видел на просторах RSDN что-то вроде:
WS_OVERLAPPEDWINDOW | CS_OWNDC

Это как "2 метра + 3 секунды". Во-вторых, в отладчике тяжело узнать состояния отдельных флагов, потому что отладчик интерпретирует переменную как целое число.
Пётр Седов (ушёл с RSDN)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.