有没有人知道是否有一种很好的方法将一个boost::posix_time::ptime
变成一个__int64
值.(我已经编译了微秒版本,而不是纳秒版本).
我需要以某种方式执行此操作,因为我希望将结果存储为使用原始数据__int64
的union
类型以用于高性能应用程序.某些类型的Memento功能对我来说非常有用.如果可能的话,我想避免演员阵容,但如果我需要,我会求助于他们.
zda*_*dan 19
将ptime转换为整数是没有意义的,因为ptime是实际时间的抽象.基于整数的时间表示该时间作为来自时期的计数.您(可能)想要做的是从您感兴趣的时间生成time_duration,然后使用time_duration :: ticks()获取64位整数.您可能需要将结果扩展到所需的精度:
ptime myEpoch(date(1970,Jan,1)); // Or whatever your epocj is.
time_duration myTimeFromEpoch = myTime - myEpoch;
boost::int64_t myTimeAsInt = myTimeFromEpoch.ticks();
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
11471 次 |
最近记录: |