Boost文档说明如下:“内部boost :: gregorian :: date存储为32位整数类型。” 。我从链接中找到了这个:http://www.boost.org/doc/libs/1_56_0/doc/html/date_time/gregorian.html。
如何计算这个32位整数?它是自纪元以来的天数(就像Joda在Java中所做的那样)?
答案 0 :(得分:1)
从documentation,当前实施支持1400-Jan-01至9999-Dec-31范围内的日期
分析代码时,类boost :: gregorian :: date将日期存储为名为days_的uint32_t整数。对于1400-Jan-01,此整数的此值为2232400.将日期增加一天表示此整数递增一个单位。因此,两个日期之间的天数差异可以通过减去它们的整数来计算。