最終更新日時: 2024年06月11日 22時45分38秒 (JST)
Akira Takahashi が更新

履歴 編集

function
<chrono>

# std::chrono::hh_mm_ss::to_duration(C++20)

    constexpr precision to_duration() const noexcept; // (1) C++20

## 概要

時:分:秒、秒未満をもつ`duration`オブジェクトに変換する。

## 戻り値

`is_negative()`が`true`であれば`-(hours() + minutes() + seconds() + subseconds())`を返し、そうでなければ`hours() + minutes() + seconds() + subseconds()`を返す。

## 例

    #include <cassert>
    #include <chrono>

    namespace chrono = std::chrono;
    using namespace std::chrono_literals;

    int main()
    {
      chrono::hh_mm_ss time1{15h + 30min + 20s};
      assert(time1.to_duration() == 15h + 30min + 20s);

      chrono::hh_mm_ss time2{-(15h + 30min + 20s)};
      assert(time2.to_duration() == -(15h + 30min + 20s));

      chrono::hh_mm_ss time3{15h + 30min + 20s + 123ms};
      assert(time3.to_duration() == 15h + 30min + 20s + 123ms);
    }

### 出力

## バージョン

### 言語

- C++20

### 処理系

- Clang: 10.0 ✅
- GCC: 11.1 ✅
- Visual C++: 2019 Update 3 ❌