- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 boost date_time 库在我的应用程序中开发过滤方案。假设我有 10000 条记录,每条记录都包含一个时间戳(UTC 中的毫秒)。我想使用 boost 将此时间戳转换为给定的时区,然后以毫秒为单位返回时间部分。我正在使用以下代码片段:
local_date_time localDate(pt, tz_ptr);
return localDate.local_time().time_of_day().total_milliseconds();
在这段代码中,pt 是一个从时间戳(以毫秒为单位)创建的 ptime 对象。所有 10000 条记录的时区指针都是常量。因此,每次迭代都创建一个 local_date_time 对象是一种浪费。如果可能,我想重用这个对象。我一直在寻找一种方法,例如:
localDate.set(ptime pt);
但是我找不到类似的东西。有人知道是否存在这样的东西吗?
最佳答案
“因此,每次迭代都创建一个local_date_time对象是一种浪费”
您看过发出的程序集了吗?我认为您过早地进行了优化。
ptime 的思想是“不可变的值类型”。 local_date_time 也是如此。这里的复杂因素是库设计者已经为共享所有权的时区实例建模(有充分的理由)。
这实际上是您唯一应该担心的部分。我会预先计算时区偏移量,只计算一次,然后完全放弃 local_date_time。
CAVEAT If you do, make sure you account for dst/non-dst dates! The offset will vary. I'm not sure whether boost/the OS even take historical time zone changes into account.
It's probably best to use Boost DateTime's zone implementation and just do the raw conversions without the help of local_date_time
避免大量复杂性的另一种方法是考虑使用
boost::date_time::c_local_adjustor<ptime>
boost::date_time::local_adjustor<ptime>
关于c++ - boost local_date_time 中没有 setter 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40600394/
我正在使用 Boost's datetime library在我的项目中。当我发现它具有小时、天、月、年等持续时间类型时,我感到非常高兴,并且它们会根据您将它们添加到的内容更改它们的值(即添加 1 个
问题是: 我知道如何在 boost 中获取本地时间 代码: boost::local_time::local_date_time currentTime( boost::pos
我正在使用 boost date_time 库在我的应用程序中开发过滤方案。假设我有 10000 条记录,每条记录都包含一个时间戳(UTC 中的毫秒)。我想使用 boost 将此时间戳转换为给定的时区
我有: time_t dataFromTodayByAddingYearsMonthsDays(int years, int months, int days) { using
如何从 tm 时间结构创建一个 boost::local_time::local_date_time 对象? 最佳答案 有点痛苦,但看起来你必须通过 posix_time::ptime: using
我尝试将 boost local_date_time 转换为 UTC,但我对 utc_time() 的返回时间感到困惑。这是一个简化的代码: #include "boost/date_time/loc
我有一个与不同时区有关的问题。有一个文件存储本地开始和结束时间。例如第一个条目在纽约时区,而第二个条目在香港时区。 80000-150000 100000-180000 所以我尝试使用 boost::
我是一名优秀的程序员,十分优秀!