如何将值分配给没有值的声明 std::chrono::d uration

How to assign a value to a declared std::chrono::duration which has no value?

本文关键字:std 声明 uration chrono 分配      更新时间:2023-10-16

如何执行等效的操作:

int n;
n = 1;

std::chrono::duration

我不建议使用原始duration类型。而是使用特定的持续时间,例如secondsnanoseconds等。

std::chrono::nanoseconds ns;
ns = std::chrono::nanoseconds { 10 };

虽然,如果你坚持,你可以使用你自己的专用duration类型:

std::chrono::duration<uint64_t, std::ratio<1, 1>> diff;
diff = std::chrono::seconds { 3 };
-- OR --
diff = std::chrono::duration<uint64_t, std::ratio<1, 1>> { 3 };

我建议:

  • 当您不确定需要什么分辨率时,请使用nanoseconds因为它可以包含任何其他标准chrono::duration值,并且它是标准类型
  • 最小化程序中的未初始化值
相关文章: