std::chrono:: year_month_day
From cppreference.net
|
ヘッダーで定義
<chrono>
|
||
|
class
year_month_day
;
|
(C++20以降) | |
year_month_day
クラスは特定の年、月、日を表現します。これはフィールドベースの時間点であり、分解能は
std::chrono::days
です。
std::chrono::years
および
std::chrono::months
を対象とした演算が直接サポートされています。
std::chrono::sys_days
との間の暗黙変換により、
std::chrono::days
を対象とした演算を効率的に実行できます。
year_month_day
は
TriviallyCopyable
StandardLayoutType
です。
目次 |
メンバー関数
year_month_day
を構築する
(public member function) |
|
|
月数または年数分だけ時間点を変更する
(public member function) |
|
|
このオブジェクトに格納されている年、月、日にアクセスする
(public member function) |
|
|
std::chrono::time_point
に変換する
(public member function) |
|
year_month_day
が有効な日付を表しているかチェックする
(public member function) |
非メンバー関数
|
(C++20)
|
2つの
year_month_day
値を比較する
(関数) |
|
(C++20)
|
year_month_day
と年数または月数の加算・減算を行う
(関数) |
|
(C++20)
|
year_month_day
をストリームに出力する
(関数テンプレート) |
|
(C++20)
|
指定されたフォーマットに従ってストリームから
year_month_day
を解析する
(関数テンプレート) |
ヘルパークラス
year_month_day
のフォーマットサポート
(クラステンプレートの特殊化) |
|
|
std::chrono::year_month_day
のハッシュサポート
(クラステンプレートの特殊化) |
例
このコードを実行
#include <chrono> #include <iostream> int main() { const std::chrono::time_point now{std::chrono::system_clock::now()}; const std::chrono::year_month_day ymd{std::chrono::floor<std::chrono::days>(now)}; std::cout << "Current Year: " << static_cast<int>(ymd.year()) << ", " "Month: " << static_cast<unsigned>(ymd.month()) << ", " "Day: " << static_cast<unsigned>(ymd.day()) << "\n" "ymd: " << ymd << '\n'; }
出力例:
Current Year: 2023, Month: 9, Day: 4 ymd: 2023-09-04