gpt4 book ai didi

c++ - 从 boost::posix_time::ptime 中减去月/年

转载 作者:太空狗 更新时间:2023-10-29 21:08:46 24 4
gpt4 key购买 nike

我有一个 boost::posix_time::ptime 指向 2010 年 3 月 31 日,如下所示:

ptime p(date(2010, Mar, 31));

我想从这个日期减去一个月(也可能是几年)。从文档中我看到这两个运算符:ptime operator-(time_duration)ptime operator-(days) 但它们都不能用于月/年。如果我尝试这样做:

time_duration duration = hours(24 * 30);
ptime pp = p - duration;

我要到 3 月 1 日,如果我正在尝试:

ptime pp = p - days(30);

我仍然是 3 月 1 日,而我想得到 2 月 28 日。
我怎样才能达到我想要的结果? (我也想在从 3 月 28 日、29 日、30 日减去一个月时得到想要的结果)

最佳答案

boost::posix_time::ptime::date() 运算符返回日期对象。您可以为此对象调用 greg_year、greg_month 等。

关于c++ - 从 boost::posix_time::ptime 中减去月/年,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2487534/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com