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

履歴 編集

function
<chrono>

std::chrono_literals::dリテラル(C++20)

namespace std {

inline namespace literals {
inline namespace chrono_literals {
  constexpr day operator""d(unsigned long long d) noexcept; // (1)
}}

namespace chrono {
using namespace literals::chrono_literals;
} // namespace chrono

}  // namespace std

概要

日単位の値を表すdayクラスのリテラル。

  • (1) : 整数型の日リテラル

戻り値

  • (1) : return day{static_cast<unsigned int>(d)};

備考

  • 時間間隔のリテラルではなく、カレンダーのリテラルなので注意

#include <iostream>
#include <chrono>

namespace chrono = std::chrono;

int main()
{
  using namespace std::chrono_literals;

  auto d = 3d; // 整数型の3日
  std::cout << d << std::endl;

  // 月のint型整数値と組み合わせることで、月・日を作れる
  chrono::month_day date = 3/1d; // 年の情報をもたない「3月1日」
  std::cout << date << std::endl;
}

出力

03
Mar/01

バージョン

言語

  • C++20

処理系

  • Clang: 8.0
  • GCC: (9.2時点で実装なし)
  • Visual C++: (2019 Update 3時点で実装なし)