• Class / Function / Type

      std::
    • Header file

      <>
    • Other / All

    最終更新日時(UTC):
    が更新

    履歴 編集

    function
    <chrono>

    std::chrono::hh_mm_ss::to_duration

    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

    処理系