【发布时间】:2017-07-25 13:54:26
【问题描述】:
我正在创建一个时间线 UI 控件,该时间线上的时间总是从零开始,就像秒表一样。我曾想过使用 std::chrono::steady_clock 来保持刻度上的开始和结束时间,但是,在这里有一个时钟时间感觉不对,比如“2017 年 3 月 10 日上午 10 点”与开始时间无关规模。
我应该/我可以创建一个从“0”开始的自定义时钟吗?
【问题讨论】:
-
您可以创建一个从 0 开始的自定义时钟。很难说您是否应该这样做,因为我不知道如何使用您的 time_points。它们是否需要在程序运行期间保持稳定,或导出/导入到其他进程?他们需要纳秒级精度吗?第二精度?分钟精度?只需从现有时钟中存储
now()并从未来时间中减去它就足够了吗?您有可以向我们展示的代码示例用例吗? -
感谢霍华德的回应,顺便说一句,喜欢你的 cppcon chrono 谈话。存储 stable_clock time_point 对我有用。要回答您的问题,time_points 是流程内部的,所以不用担心,但我确实需要纳秒级精度。
-
我想我会使用普通的stead_clock。出于兴趣,我如何定义一个类似于 stable_clock 但纪元为 0 的类型?我想尝试一下:)