hh_mm_ss 类

std::chrono::duration 拆分为“小时:分钟:秒”,拆分精确度由 Duration 模板参数确定。 此类主要用作格式设置工具。

Duration 必须是 std::chrono::duration 的专用化。

语法

template<class Duration> class hh_mm_ss; // C++20

成员

名称 描述
构造函数 构造 hh_mm_ss
is_negative 指示持续时间是否为负数。
小时数 获取小时值。
分钟数 获取分钟值。
获取秒值。
subseconds 获取亚秒值。
to_duration 返回 duration_cast<precision>
hh_mm_ss::operator precision 获取此 hh_mm_ss 的精度。

非成员

“属性” 描述
hh_mm_ss::operator<< hh_mm_ss 输出到给定流。

要求

标头<chrono>

命名空间std::chrono

编译器选项: /std:c++latest

hh_mm_ss::hh_mm_ss 构造函数

构造一个 hh_mm_ss

constexpr explicit hh_mm_ss(Duration d);

参数

d
构造一个hh_mm_ss表示Durationd的精度定义为duration<common_type_t<Duration::rep, seconds::rep>, ratio<1, 10fractional_width>>

备注

如果 treat_as_floating_point_v<precision::rep>true,则使用 abs(d)-hours()-minutes()-seconds() 初始化精度。 否则,使用 duration_cast<precision>(abs(d)-hours()-minutes()-seconds()) 初始化精度

hh_mm_ss::is_negative

获取持续时间是否为负数。

constexpr bool is_negative() const noexcept;

返回值

如果 hh_mm_ss 值为负,则为 true。 否则为 false

hh_mm_ss::hours

获取此 hh_mm_ss 的小时部分。

constexpr chrono::hours hours() const noexcept;

返回值

hh_mm_sshours 值。

hh_mm_ss::minutes

获取此 hh_mm_ss 的分钟部分。

constexpr chrono::minutes minutes() const noexcept;

返回值

hh_mm_ssminutes 值。

hh_mm_ss::seconds

获取此 hh_mm_ss 的秒部分。

constexpr chrono::seconds seconds() const noexcept;

返回值

hh_mm_ssseconds 值。

hh_mm_ss::subseconds

获取此 hh_mm_ss 的亚秒部分。

constexpr precision subseconds() const noexcept;

返回值

hh_mm_sssubseconds 值。
如果 std::chrono::treat_as_floating_point_v<precision::rep>true,则计算方式为 abs(d)-hours()-minutes()-seconds()。 否则,计算方式为 std::chrono::duration_cast<precision>(abs(d)-hours()-minutes()-seconds())

hh_mm_ss::operator precision

constexpr explicit operator precision() const noexcept;

返回值

返回 to_duration

hh_mm_ss::to_duration

constexpr precision to_duration() const noexcept;

返回值

如果 is_negtrue,则返回 -(h+m+s+ss)。 否则返回 h+m+s+ss

另请参阅

<chrono>
头文件引用