C++11 从过去的微秒中获取时间 < P>工作在C++ 11函数,它返回具有毫秒分辨率的历元时间戳中的字符串。使用当前日期执行此操作似乎很简单: auto currentTime = std::chrono::system_clock::now( ); const time_t time = std::chrono::system_clock::to_time_t( currentTime );

C++11 从过去的微秒中获取时间 < P>工作在C++ 11函数,它返回具有毫秒分辨率的历元时间戳中的字符串。使用当前日期执行此操作似乎很简单: auto currentTime = std::chrono::system_clock::now( ); const time_t time = std::chrono::system_clock::to_time_t( currentTime );,c++11,C++11,但是,如果没有now(),而是使用过去的时间戳,我很难找到初始化的方法。正在尝试使用std库进行此操作,但无法完全了解如何使用过去的时间戳初始化时间点。使用std::chrono::duration类如何。下面是一个例子 unsigned long noOfClockTicks = 10111111111; // Mar 16 10:31:59 2018 std::chrono::duration<unsigned long> duration(noOfClockTicks); sy

但是,如果没有
now()
,而是使用过去的时间戳,我很难找到初始化的方法。正在尝试使用std库进行此操作,但无法完全了解如何使用过去的时间戳初始化时间点。

使用
std::chrono::duration
类如何。下面是一个例子

unsigned long noOfClockTicks = 10111111111; // Mar 16 10:31:59 2018
std::chrono::duration<unsigned long> duration(noOfClockTicks);
system_clock::time_point pastTime(duration);
unsigned long noOfClockTicks=10111111111;//2018年3月16日10:31:59
std::chrono::持续时间(noOfClockTicks);
系统时钟:时间点过去时间(持续时间);
调整
noOfClockTicks
以获得所需的正确值,或者您甚至可以从
std::chrono::system\u clock::now()计算它