duration::duration 构造函数

构造 duration 对象。

constexpr duration();
template<class Rep2>
    constexpr explicit duration(const Rep2& R);
template<class Rep2, class Period2>
    constexpr duration(const duration<Rep2, Period2>& Dur);

备注

第一个构造函数构造表示时间间隔零时钟时间周期的对象。

第二个构造函数构造表示时间间隔 R 时钟时间周期的对象。 若要避免转体滴答计数,它是构造一个可以被视为一个浮点类型的表示类型 Rep2 的持续时间对象的错误,则 duration::rep 不能被视为一个浮点类型。

第三个构造函数构造表示由Dur指定的时间长度为一个时间间隔的对象。 若要避免滴答计数的截断,构造一个从目标类型“不能比较的” 另一持续时间对象的持续时间对象是错误的。

持续时间类型 D1 是“不能比较的” 与另一个持续时间类型 D2,如果 D2 不能被视为一个浮点类型和 ratio_divide<D1::period,D2::period>::type::den 不是1。

除非 treat_as_floating_point<Rep>“适用” ,并 treat_as_floating_point<Rep2> “保存错误”,第二个构造函数不参与超加载解析。 有关详细信息,请参阅<type_traits>

除非 treat_as_floating_point<Rep> “适用” 和 treat_as_floating_point<Rep2> 或 ratio_divide<Period2, period>::den 等于 1 和 treat_as_floating_point<Rep2>“不适用” ,第三个构造函数不参与超加载解析。 有关详细信息,请参阅<type_traits>

要求

Header: chrono

Namespace: std::chrono

请参见

参考

duration 类

<chrono>

treat_as_floating_point 结构