Вычисление дробного дня года в C++14C++

Программы на C++. Форум разработчиков
Anonymous
Вычисление дробного дня года в C++14

Сообщение Anonymous »


Я написал следующий код, используя библиотеку date.h Говарда Хиннанта, для вычисления дробного дня года текущего времени. Мне было интересно, есть ли более короткие способы сделать это, потому что мой код кажется излишним вызовов std::chrono и date. Могу ли я напрямую вычислить количество дробных дней с начала года (с точностью до микросекунды) и избежать двухэтапного подхода?
#include #include #include "date.h" интервал основной() { // Получаем фактическое время. auto now = std::chrono::system_lock::now(); // Получаем количество дней с начала года. auto ymd = date::year_month_day( date::floor(сейчас)); auto ymd_ref = date::year{ymd.year()}/1/1; int дней = (date::sys_days{ymd} - date::sys_days{ymd_ref}).count(); // Получаем дробное количество секунд дня. auto microсекунды = std::chrono::duration_cast(сейчас - date::floor(сейчас)); двойные секунды_синце_полуночи = 1e-6*микросекунды.счет(); // Получить дробный номер дня. std::cout

Вернуться в «C++»