从std::chrono::point_time获得秒
时间: 2023-09-07 10:13:15 浏览: 42
std::chrono::point_time对象包含一个时间点以及时钟的时钟周期。要从std::chrono::point_time对象中获取秒,可以使用std::chrono::time_point_cast函数。例如,以下代码将std::chrono::point_time对象转换为std::chrono::system_clock对象,并获取其秒:
```
#include <chrono>
#include <iostream>
int main() {
std::chrono::point_time<std::chrono::system_clock::duration> time_point =
std::chrono::point_time<std::chrono::system_clock::duration>::max();
// 获取秒
auto seconds = std::chrono::time_point_cast<std::chrono::seconds>(time_point);
std::cout << seconds.time_since_epoch().count() << '\n';
return 0;
}
```
在这个例子中,我们使用std::chrono::point_time<std::chrono::system_clock::duration>的最大值来演示如何从中获取秒。我们使用std::chrono::time_point_cast函数将std::chrono::point_time对象转换为std::chrono::system_clock对象,并将其秒打印到控制台。