std::chrono
库在某种程度上依赖于Clock和TrivialClock的概念。我通过了标准,但是我仍然不确定几件事:
Clock
和TrivialClock
之间的唯一区别是now
可能会为Clock
抛出而不会为TrivialClock
抛出的事实吗? / li>
clock::duration
是否必须与clock::time_point::duration?
相同now
是静态函数成员?欢迎引用/引用该标准。
答案 0 :(得分:4)
Clock
和TrivialClock
之间唯一的区别是,现在可能会为Clock
抛出但不会为TrivialClock
抛出的事实吗?
不。对TrivialClock
的成员类型也有更多要求。以const int
作为rep
的时钟不是TrivialClock
,而是Clock
。
clock::duration
是否必须与clock::time_point::duration
相同?
是的。两种可能的实例是std::time_point<clock>
,它的默认参数为clock::duration
。或std::time_point<other_clock, clock::duration>
(具有显式名称)。
- 是否需要
now
是静态函数成员?
据我所知,人们可能会认为是。要使clock::now()
是一个有效的表达式,它只返回一个clock::time_point
。可能是静态函子。