• 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 month& m); // (1) C++20
    }
    

    概要

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

    戻り値

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

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

    備考

    • このフォーマットでは、ロケール規定の月の短縮名が出力される。デフォルトのCロケールでは、以下のように出力される:
    月の定数 出力される月名 (Cロケール)
    January Jan
    February Feb
    March Mar
    April Apr
    May May
    June Jun
    July Jul
    August Aug
    Sptember Sep
    October Oct
    November Nov
    December Dec

    #include <iostream>
    #include <chrono>
    
    namespace chrono = std::chrono;
    
    int main()
    {
      chrono::month ar[] = {
        chrono::January,
        chrono::February,
        chrono::March,
        chrono::April,
        chrono::May,
        chrono::June,
        chrono::July,
        chrono::August,
        chrono::September,
        chrono::October,
        chrono::November,
        chrono::December
      };
    
      for (chrono::month m : ar) {
        std::cout << m << std::endl;
      }
    }
    

    出力

    Jan
    Feb
    Mar
    Apr
    May
    Jun
    Jul
    Aug
    Sep
    Oct
    Nov
    Dec
    

    バージョン

    言語

    • C++20

    処理系

    関連項目

    参照