Home C&C++函数库 c++ 语法 程序源码 Linux C库

std::chrono::

duration_cast

公众成员函数  <chrono>

template <class ToDuration, class Rep, class Period>
  constexpr ToDuration duration_cast (const duration<Rep,Period>& dtn);

持续时间转换
将dtn的值转换为其他持续时间类型,并考虑其时间单位的差异。

该函数不使用隐式转换。相反,所有计数器值都在内部转换为最精确的表示(内部计数类型的common_type), 然后转换为目标类型,所有转换都使用static_cast显式地完成。

如果目标类型的精度较低,则该值将损失精度。

☲  参数


dtn
持续时间对象。

☉  返回值



dtn的值转换为目标持续时间类型的对象。
目标持续时间类型应该是duration的一个实例化。。

☣  示例



// duration_cast
#include <iostream>     // std::cout
#include <chrono>       // std::chrono::seconds, std::chrono::milliseconds
                        // std::chrono::duration_cast

int main ()
{
  std::chrono::seconds s (1);             // 1 second
  std::chrono::milliseconds ms = std::chrono::duration_cast<std::chrono::milliseconds> (s);

  ms += std::chrono::milliseconds(2500);  // 2500 millisecond

  s = std::chrono::duration_cast<std::chrono::seconds> (ms);   // truncated

  std::cout << "ms: " << ms.count() << std::endl;
  std::cout << "s: " << s.count() << std::endl;

  return 0;
}

输出:
ms: 3500
s: 3

🍄  另请参阅



duration::duration 构建持续时间对象 (公共成员函数)

联系我们 免责声明 关于CandCplus 网站地图