• Class / Function / Type

      std::
    • Header file

      <>
    • Other / All

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

    履歴 編集

    function
    <chrono>

    std::chrono::operator<<

    namespace std::chrono {
      template <class charT, class traits>
      std::basic_ostream<charT, traits>&
        operator<<(std::basic_ostream<charT, traits>& os, const weekday& wd); // (1) C++20
    }
    

    概要

    weekdayオブジェクトを出力ストリームに出力する。

    戻り値

    便宜上のリテラルキャストSTATICALLY-WIDENを導入する。STATICALLY-WIDEN<charT>("...")は、charTcharである場合は"..."charTwchar_tである場合はL"..."を意味する。

    • (1) : 以下と等価:
      return os << (m.ok() ?
        format(os.getloc(), STATICALLY-WIDEN<charT>("{:L%a}"), m) :
        format(os.getloc(), STATICALLY-WIDEN<charT>("{} is not a valid weekday"),
               static_cast<unsigned int>(m)));
      

    備考

    • このフォーマットでは、ロケール規定の曜日の短縮名が出力される。デフォルトのCロケールでは、以下のように出力される:
    曜日の定数 出力される曜日名 (Cロケール)
    Sunday Sun
    Monday Mon
    Tuesday Tue
    Wednesday Wed
    Thursday Thu
    Friday Fri
    Saturday Sat

    #include <iostream>
    #include <chrono>
    
    namespace chrono = std::chrono;
    
    int main()
    {
      chrono::weekday ar[] = {
        chrono::Sunday,
        chrono::Monday,
        chrono::Tuesday,
        chrono::Wednesday,
        chrono::Thursday,
        chrono::Friday,
        chrono::Saturday
      };
    
      for (chrono::weekday wd : ar) {
        std::cout << wd << std::endl;
      }
    }
    

    出力

    Sun
    Mon
    Tue
    Wed
    Thu
    Fri
    Sat
    

    バージョン

    言語

    • C++20

    処理系

    関連項目

    参照