std::chrono::clock_cast
来自 cppreference.cn
定义于头文件 <chrono> |
||
template< class Dest, class Source, class Duration > auto clock_cast( const std::chrono::time_point<Source, Duration>& t ); |
(since C++20) | |
将时钟 Source
的时间点 t
转换为时钟 Dest
的等效时间点,必要时使用 std::chrono::system_clock 和/或 std::chrono::utc_clock 作为中介。
- 如果表达式 std::chrono::clock_time_conversion<Dest, Source>{}(t) 形式良好,则返回该表达式的结果。
- 否则,如果以下至少两个表达式之一形式良好,则
- 如果两个表达式都形式良好,则转换是模棱两可的,并且程序是非良构的。
- 否则,恰好两个表达式之一形式良好;返回该表达式的结果。
1) std::chrono::clock_time_conversion<Dest, std::chrono::system_clock>{}(
std::chrono::clock_time_conversion<std::chrono::system_clock, Source>{}(t))
std::chrono::clock_time_conversion<std::chrono::system_clock, Source>{}(t))
2) std::chrono::clock_time_conversion<Dest, std::chrono::utc_clock>{}(
std::chrono::clock_time_conversion<std::chrono::utc_clock, Source>{}(t))
std::chrono::clock_time_conversion<std::chrono::utc_clock, Source>{}(t))
- 否则,如果以下至少两个表达式之一形式良好,则
- 如果两个表达式都形式良好,则转换是模棱两可的,并且程序是非良构的。
- 否则,恰好两个表达式之一形式良好;返回该表达式的结果。
1) std::chrono::clock_time_conversion<Dest, std::chrono::utc_clock>{}(
std::chrono::clock_time_conversion<std::chrono::utc_clock, std::chrono::system_clock>{}(
2) std::chrono::clock_time_conversion<Dest, std::chrono::system_clock>{}(
std::chrono::clock_time_conversion<std::chrono::system_clock, std::chrono::utc_clock>{}(
- 否则,此函数不参与重载解析。
[编辑] 返回值
转换的结果,如上所述确定。
[编辑] 示例
本节尚不完整 原因:没有示例 |
[编辑] 参见
(C++20) |
traits 类,定义如何将一个时钟的时间点转换为另一个时钟的时间点 (类模板) |