std::chrono::year_month_day
From cppreference.com
| ヘッダー <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値を比較します。(function) |
| (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