CET


Работа с датой и временем в С++

В свое время для алготрейдерских задач мне нужно было много оперировать датой и временем. Конечно, в С++ и Си есть библиотеки для работы с датой и временем. Но мне захотелось сделать свой велосипед, который бы мог легко и удобно превращать строковое представление времени в метку времени, менять часовой пояс, получать время UTC компьютера, преобразовывать метку времени в стандартный формат даты и времени и обратно и т.д. и т.п. Одним словом, целый спектр задач.

В итоге я сделал библиотеку xtime (ну, громко сказано «библиотека», это всего лишь два файла .cpp и .hpp). Для хранения и преобразования меток времени используется тип данных uint64 либо double, поэтому у данной библиотеки нет проблемы 2038 года.

Используемые типы данных:
  • timestamp_t — тип длиной 64 бита для хранения метки времени.
  • ftimestamp_t - тип с плавающей точкой длиной 64 бита для хранения метки времени с дробной частью секунд.
  • oadate_t - тип с плавающей точкой длиной 64 бита для хранения даты автоматизации (OADate)


( Читать дальше )

....все тэги
2010-2020
UPDONW