Re[13]: Откуда эта лютая любовь к знаковым целым?
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 09.05.20 01:42
Оценка:
Здравствуйте, netch80, Вы писали:

N>Почему для тебя беззнаковость номера дня важнее остальных факторов?


Каких "всех"? Здесь пока озвучивались только монотонность при переходе через нуль, спецзначения вроде -1, и экономия на преобразованиях. Циклы с декрементом до нуля включительно я использую крайне редко, для спецзначений использую UINT_MAX и соседние, и добавить несколько преобразований, даже в виде static_cast вместо int (), меня не ломает.

N>>>Но, как только начинается вопрос про то, что даты надо вычитать, уже приходится переводить к знаку (об этом тебе уже написали рядом). Ну и зачем эти лишние конверсии?

ЕМ>>А если даты нужно делить, чтобы, например, вычислить среднее количество дней, которое занимали некие процессы? Давайте уж сразу хранить их в double, сэкономим на конверсиях.

N>И это вполне возможно. Юлианский день, в плавучке — достаточно точный метод задания времени. Но тут начинаются проблемы округления, это уже неудобно. Вот unixtime в микросекундах со знаком — достаточно дёшево и защищено от подобных проблем.


Знак-то там зачем? Я вот очень часто пользуюсь виндовой GetTickCount, и ни разу не приходилось преобразовывать результат к знаковому типу. Запомнил время при старте цикла или на последней итерации, на очередной итерации вычел его из нового значения, получил истекший интервал. "Заворот" при переполнении обрабатывается естественным образом, автоматически. Что я все эти годы делал не так?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.