std::chrono::hh_mm_ss<Duration>::is_negative, std::chrono::hh_mm_ss<Duration>::hours, std::chrono::hh_mm_ss<Duration>::minutes, std::chrono::hh_mm_ss<Duration>::seconds, std::chrono::hh_mm_ss<Duration>::subseconds

< cpp‎ | chrono‎ | hh mm ss
Utilities library
Language support
Type support (basic types, RTTI)
Library feature-test macros (C++20)
Dynamic memory management
Program utilities
Coroutine support (C++20)
Variadic functions
Debugging support
Three-way comparison
General utilities
Date and time
Function objects
Formatting library (C++20)
Relational operators (deprecated in C++20)
Integer comparison functions
Swap and type operations
Common vocabulary types
Elementary string conversions

constexpr bool is_negative() const noexcept;
constexpr std::chrono::hours hours() const noexcept;
constexpr std::chrono::minutes minutes() const noexcept;
constexpr std::chrono::seconds seconds() const noexcept;
constexpr precision subseconds() const noexcept;

Obtains the components of the stored "broken down" time.

[edit] Return value

Let d be the represented duration:

1) true if d is negative, false otherwise.
4) std::chrono::duration_cast<std::chrono::seconds>(abs(d) - hours() - minutes())
5) abs(d) - hours() - minutes() - seconds() if std::chrono::treat_as_floating_point_v<precision::rep> is true; otherwise std::chrono::duration_cast<precision>(abs(d) - hours() - minutes() - seconds()).

[edit] Example