Sea*_*nch 7 c++ c++11 c++-chrono
如果我有以下时钟并使用它来计算自时钟纪元以来的滴答计数,那么这个计数实际上代表什么。
std::chrono::high_resolution_clock::now().time_since_epoch().count();
Run Code Online (Sandbox Code Playgroud)
例如,我刚刚运行了这个并得到了1389375799048790227. 这个数字是什么意思?是纳秒、微秒等吗?
您始终可以使用将其投射到所需的时间单位 duration_cast
using namespace std::chrono;
auto time = duration_cast<seconds>(high_resolution_clock::now().time_since_epoch());
Run Code Online (Sandbox Code Playgroud)
现在time.count()将返回秒数。
持续时间的类型是std::chrono::high_resolution_clock::duration。您可以使用:std::chrono::high_resolution_clock::duration::period::num和来检查持续时间的刻度周期std::chrono::high_resolution_clock::duration::period::den。这是一个分数的分子和分母,代表每个刻度的秒数(例如,1/1000000000 表示纳秒)。
纪元是未指定的,但对你来说是 1389375799048790227 个滴答声,从你得到那个结果开始。