std::chrono::hh_mm_ss<Duration>::hh_mm_ss
来自cppreference.com
| |
(1) | |
| |
(2) | |
构造 hh_mm_ss 对象。
1) 构造对应
Duration::zero() 的 hh_mm_ss 对象。2) 构造对应
d 的 hh_mm_ss 对象:
- is_negative() 返回
d < Duration::zero()。 - hours() 返回
std::chrono::duration_cast<std::chrono::hours>(abs(d))。 - minutes() 返回
std::chrono::duration_cast<std::chrono::minutes>(abs(d) - hours())。 - seconds() 返回
std::chrono::duration_cast<std::chrono::seconds>(abs(d) - hours() - minutes())。 - 若
std::chrono::treat_as_floating_point_v<precision::rep>为true则 subseconds() 返回abs(d) - hours() - minutes() - seconds();否则返回std::chrono::duration_cast<precision>(abs(d) - hours() - minutes() - seconds())。
参数
| d | - | 要拆分的时长。 |
示例
运行此代码
#include <chrono>
#include <print>
int main()
{
std::println("默认构造函数: {}", std::chrono::hh_mm_ss<std::chrono::minutes>{});
std::chrono::time_point now = std::chrono::system_clock::now();
std::chrono::hh_mm_ss time_of_day{now - std::chrono::floor<std::chrono::days>(now)};
std::println("日内时间是: {}", time_of_day);
}
可能的输出:
默认构造函数: 00:00:00
日内时间是: 12:13:14.151617189