【发布时间】:2019-02-22 21:04:23
【问题描述】:
我刚刚注意到c++20 将拥有chrono::year。它的构造函数在以下范围内接受int:[-32767, 32767],但是我不清楚这个参数代表什么。
- 这是否与
tm_year的 1900 起源一致? - 或者
time_t1970 年的起源? - 或者它在 Anno Domini 中,来源为 0?
编辑:
这是理解is_leap 函数chrono::year 提供的含义的关键。没有来源,不清楚这里代表的是哪一年。
【问题讨论】:
-
这个标准非常无用:年代表民间历法中的一年 timsong-cpp.github.io/cppwp/time.cal.year#overview-1
-
由于是公历时间,我假设 0 是 0,但这只是一个假设。幸运的是,还有几年的时间来整理标准中的措辞。
-
cppreference 的描述有什么不清楚的地方? "班级年代表proleptic Gregorian calendar中的一年。它的范围是[-32767, 32767]。"?
-
@JesperJuhl Proleptic 公历有起源吗?
-
标准链接没有提到公历,只是民用日历,其中公历只是房间里的大象。这是一个有趣的措辞。
标签: c++20 c++ date time epoch chrono