Я хотел бы печатать или извлекать значения года/месяца/дня.
Я не хочу использовать time_t
из-за проблемы 2038 года, но все примеры, которые я нашел в Интернете, используют для преобразования time_point
в tm
.
Есть ли простой способ конвертировать из time_point в tm (желательно без boost)?
Реализация, такая как timesub из libc, будет моей последней целью: http://www.opensource.apple.com/source/Libc/Libc-262/stdtime/localtime.c
Изменить:. Прочитав предлагаемые ссылки и сделав еще несколько исследований, я пришел к следующему выводу.
- Использование time_t, где оно имеет длину 64 бит, подходит (для большинства целей).
- Использование Boost.Date_Time для переносимого кода.
Следует отметить, что Boost.Date_Time может быть только библиотекой заголовка. Источник: http://www.boost.org/doc/libs/1_53_0/more/getting_started/unix-variants.html#header-only-libraries