如何将值分配给没有值的声明 std::chrono::d uration
How to assign a value to a declared std::chrono::duration which has no value?
如何执行等效的操作:
int n;
n = 1;
用std::chrono::duration
?
我不建议使用原始duration
类型。而是使用特定的持续时间,例如seconds
、nanoseconds
等。
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
值,并且它是标准类型 - 最小化程序中的未初始化值
相关文章:
- 在声明中合并两个常量"std::set"(不是在运行时)
- std::unordered_map 类型对象声明期间出现"field has incomplete type"错误
- std::带有前向声明的变体
- 如何在 C++ 中转发声明 std::set?
- 警告:忽略模板参数上的属性..在 std::unique_ptr (-wignore 属性)的声明中
- 错误:在 C++ 'std'使用未声明的标识符
- 如果在 2 个线程中使用,是否值得将size_t声明为 std::atomic?
- 可以使用<size_t>static_const(),std::as_const()或static_cast<const size_t>()来声明数组吗?
- 向量索引变量声明(size_t 或 std::vector<DATATYPE>::size_type)
- 用于从 ANSI 字符串转换为 std::basic_string <TCHAR>的正确函数声明
- 为什么使用与父级声明的 std::function 在与子级一起使用时会显示错误?
- 怎么可能写 f( *this, std::forward<Args>(args)... ) 而 f 只用 F f 声明;
- c++17通过生成预先声明的类型列表的笛卡尔乘积来生成std::变体
- 如果真的需要std::move,我们应该什么时候声明右值refs
- 使用 std::move 将参数传递给函数,如果该参数声明为按值传递或使用移动操作数 &&,是否有区别?
- 正在声明多维std::数组
- std变体和正向声明
- 在变量名后声明带有 () 的非内部类型与不使用变量名的行为不同。即 std::map<int,char>x(); - 这是怎么回事?
- 为什么在不使用时在此处声明 std::unique_lock
- std::enable_if 更改成员 *变量* 声明/类型