Методы SystemTime стали const — арифметика времени на этапе компиляции
13.08.2025Часть методов SystemTime помечена как const. Поскольку у типа есть константа UNIX_EPOCH, из неё можно строить другие опорные точки и считать интервалы во время компиляции.
Почему SystemTime, а не Instant
Автор отмечает, что те же арифметические методы теоретически можно было бы сделать const и у Instant, но у него нет конструктора, доступного в константном контексте, — считать там нечего. У SystemTime ситуация другая: UNIX_EPOCH позволяет задать точку отсчёта и вычислять от неё, например длительность стандартного периода в константах.
Работа вынесена отдельно от остальных const-изменений, потому что затрагивает нетривиальный системный код. Автор — clarfonthey.
Оригинал
Constify SystemTime methods
Упоминаний: 1 · Просмотров: 1