std::chrono::
time_point_cast
公众成员函数 <chrono>
template <class ToDuration, class Clock, class Duration>
time_point<Clock,ToDuration> time_point_cast (const time_point<Clock,Duration>& tp);
|
时间点转换
将tp的值转换为不同时间精度的时间点类型,注意它们持续时间的单位时间差异。
函数使用duration_cast转换内部持续时间对象。
注意,函数的第一个模板形参不是返回类型,而是它的duration成员。
☲ 参数
-
tp
-
一个时间点对象。
☉ 返回值
tp转换为time_point<Clock,ToDuration>类型对象的值。
time_point<Clock,ToDuration>是与tp相同时钟类型的时间点对象。
☣ 示例
// time_point_cast
#include <iostream>
#include <ratio>
#include <chrono>
int main ()
{
using namespace std::chrono;
typedef duration<int,std::ratio<60*60*24>> days_type;
time_point<system_clock,days_type> today = time_point_cast<days_type>(system_clock::now());
std::cout << today.time_since_epoch().count() << " days since epoch" << std::endl;
return 0;
}
|
可能输出:
15490 days since epoch
🍄 另请参阅
duration_cast |
持续时间转换(函数模板) |
time_point::time_point |
构造time_point(公共成员函数) |