我需要计算Unix纪元(1970年1月1日UTC的00:00:00)与将来用户选择的某个日期之间的秒和纳秒。
这是到目前为止我通过其他Stack Overflow答案所找到的内容:
// seconds and nanoseconds past epoch
auto now = std::chrono::system_clock::now().time_since_epoch();
auto now_ns = std::chrono::duration_cast<std::chrono::nanoseconds>(now);
auto now_sec = std::chrono::duration_cast<std::chrono::seconds>(now);
// output total ns since epoch
qDebug() << now_ns.count() << "ns";
// output total secs since epoch
qDebug() << now_sec.count() << "secs";
auto nano_secs = now_ns.count() - (now_sec.count() * 1000000000);
// output ns minus whole seconds
qDebug() << "nano_secs = " << nano_secs;
使用此功能,我可以获得当前日期和时间的搜索结果,但这不是我所需要的。出于演示目的,假设将来的日期为UTC 2020年7月1日00:00:00。我该如何计算呢?