Использование Boost DateTime для вычисления наносекундной разницы во времени между эпохами Windows (FILETIME) и Linux - PullRequest
0 голосов
/ 24 июня 2019

Вот моя реализация

const boost::posix_time::ptime LINUX_EPOCH(boost::gregorian::date(1970,1,1));
const boost::posix_time::ptime WINDOWS_EPOCH(boost::gregorian::date(1601,1,1));

boost::posix_time::time_duration delta(WINDOWS_EPOCH - LINUX_EPOCH);
std::cout << delta.total_nanoseconds() << std::endl;    

источник на wandbox ; но, как ни странно, я получаю результат

6802270473709551616

, что неверно. По данным онлайн-конвертера даты Это должно быть что-то вроде

11644473601000000000

Что я делаю не так?

...