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 | 指出持續時間是否為負數。 |
hours | 取得小時值。 |
分鐘 | 取得分鐘值。 |
seconds | 取得秒值。 |
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
建構表示Duration
d
定義為有效位數的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;
傳回值
true
如果值為負值,則 hh_mm_ss
為 。 否則為 false
。
hh_mm_ss::hours
取得這個 hh_mm_ss
的小時部分。
constexpr chrono::hours hours() const noexcept;
傳回值
hours
這個hh_mm_ss
的值。
hh_mm_ss::minutes
取得這個 hh_mm_ss
的分鐘部分。
constexpr chrono::minutes minutes() const noexcept;
傳回值
minutes
這個hh_mm_ss
的值。
hh_mm_ss::seconds
取得這個 hh_mm_ss
的秒部分。
constexpr chrono::seconds seconds() const noexcept;
傳回值
seconds
這個hh_mm_ss
的值。
hh_mm_ss::subseconds
取得這個 hh_mm_ss
的子秒部分。
constexpr precision subseconds() const noexcept;
傳回值
subseconds
這個hh_mm_ss
的值。
如果 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;
傳回值
hh_mm_ss::to_duration
constexpr precision to_duration() const noexcept;
傳回值
如果 is_neg
是 true
,則會傳回 -(h+m+s+ss)
。 否則傳回 h+m+s+ss
。