year_month_day_last() = delete; // (1) C++20
constexpr year_month_day_last(
const chrono::year& y,
const chrono::month_day_last& mdl) noexcept; // (2) C++20
year_month_day_last(const year_month_day_last&) = default; // (3) C++20
year_month_day_last(year_month_day_last&&) = default; // (4) C++20
概要
- (1) : デフォルトコンストラクタ。定義されない
- (2) : 年、月の最終日の値をそれぞれ指定して構築する
- (3) : コピーコンストラクタ
- (4) : ムーブコンストラクタ
効果
- (2) :
y
、mdl
をメンバ変数として保持する
例外
投げない
例
#include <cassert>
#include <chrono>
namespace chrono = std::chrono;
using namespace std::chrono_literals;
int main()
{
chrono::year_month_day_last date1{2020y, chrono::February/chrono::last};
chrono::year_month_day_last date2{chrono::year{2020}, chrono::last/chrono::month{2}};
assert(chrono::year_month_day{date1} == 2020y/2/29);
assert(chrono::year_month_day{date2} == 2020y/2/29);
}
出力
バージョン
言語
- C++20
処理系
- Clang: 8.0 ✅
- GCC: 11.1 ✅
- Visual C++: 2019 Update 3 ❌