作为标题,如何计算从 1900 年到现在使用 boost 的持续时间?
编辑:抱歉之前的问题太短了。我将再次描述我的问题。我有关于将生日作为整数保存到数据库的问题。我创建了四个函数,如下所示:
ptime 到整数(按天):
int ti=time_to_int(ptime(date(2012,1,1),0)); => ti = 15430;//number of day from 1970 to 2012
整数到 ptime:
ptime pt = int_to_time(15430);
ptime 到字符串:
ptime pt(date(2012,1,1), 0); string s = time_to_string(pt, "%d.%m.%Y");
字符串到 ptime:
ptime pt = string_to_time(%d.%m.%Y);
问题:上面,我从 1970 年开始使用 epoch,一切都很好。那么如何将 01/01/1945 转换为整数呢?我认为需要使用 1900 年的纪元。但是,当将 01/01/2012 转换为 1900 年的 int 时,它返回负数,因为“我认为”以毫秒为单位的滴答计数溢出(32 位)。使用一些方法手动将日期计算为 int 是可以的,但将 int 转换回日期似乎很糟糕。我想使用 boost 来做到这一点。
有什么建议吗?谢谢!