std::chrono::time_point<Clock,Duration>::time_since_epoch
< cpp | chrono | time point
duration time_since_epoch() const; |
(C++11 起) (C++14 前) |
|
constexpr duration time_since_epoch() const; |
(C++14 起) | |
返回表示 *this 与 clock
的纪元间的时间量的 duration 。
参数
(无)
返回值
此 time_point
与 clock
的纪元间的时间量
示例
运行此代码
#include <iostream> #include <chrono> #include <ctime> int main() { auto p0 = std::chrono::time_point<std::chrono::system_clock>{}; auto p1 = std::chrono::system_clock::now(); auto p2 = p1 - std::chrono::hours(24); auto epoch_time = std::chrono::system_clock::to_time_t(p0); std::cout << "epoch: " << std::ctime(&epoch_time); auto today_time = std::chrono::system_clock::to_time_t(p1); std::cout << "today: " << std::ctime(&today_time); std::cout << "hours since epoch: " << std::chrono::duration_cast<std::chrono::hours>( p1.time_since_epoch()).count() << '\n'; std::cout << "yesterday, hours since epoch: " << std::chrono::duration_cast<std::chrono::hours>( p2.time_since_epoch()).count() << '\n'; }
可能的输出:
epoch: Thu Jan 1 00:00:00 1970 today: Fri Jun 30 10:44:11 2017 hours since epoch: 416338 yesterday, hours since epoch: 416314