2
可以通过total_microseconds方法从time_duration获得总微秒数,但我无法弄清楚如何从该数字重新构造time_duration。在文档中似乎没有这样的构造函数,我错过了什么?构建boost :: posix_time :: time_duration从微秒
可以通过total_microseconds方法从time_duration获得总微秒数,但我无法弄清楚如何从该数字重新构造time_duration。在文档中似乎没有这样的构造函数,我错过了什么?构建boost :: posix_time :: time_duration从微秒
有boost::posix_time::microseconds:
#include <iostream>
#include <boost/date_time.hpp>
namespace bpt = boost::posix_time;
int main()
{
bpt::time_duration td = bpt::microseconds(12345678);
std::cout << td << '\n';
}
嗯...我试过了。我输入数字“34200186270”,根据我的计算,这个数字应该是大约9点30分,但是,当我输出00:35:47.483647的结果时, – Craig 2013-04-18 03:12:48
编辑:等待那一个,当我将它提供给你的测试程序时,我得到了正确的编号,必须是某处的代码错误。感谢您的帮助。 – Craig 2013-04-18 03:15:59
@克雷格我得到了'09:30:00.186270'。你的持续时间是2^31微秒,也许你把它存储在32位有符号数的地方? – Cubbi 2013-04-18 03:16:51