将 chrono:: 毫秒转换为 uint64_t?

2024-02-09

假设我有可变的毫秒数x:

chrono::milliseconds x = std::chrono::duration_cast<chrono::milliseconds>(something);

我该如何转换x from chrono::milliseconds to uint64_t?

我努力了:

uint64_t num = std::chrono::duration_cast<uint64_t>(x);

但它说:

没有匹配的函数可供调用 uration_cast(std::chrono::毫秒&)


首先,你一般不应该做这种事情。<chrono>提供了一个类型安全和通用的单位库来处理持续时间,并且没有什么充分的理由可以逃避这种安全性和通用性。

一些在类型安全的泛型单元库中不会发生但在类型不安全的整数类型中会发生的弊病的示例:

// a type-safe units library prevents these mistakes:
int seconds = ...
int microseconds = seconds * 1000; // whoops
int time = seconds + microseconds; // whoops

void bar(int seconds);

bar(microseconds); // whoops

// a generic duration type prevents the need for:
unsigned sleep(unsigned seconds);
int usleep(useconds_t useconds);
int nanosleep(const struct timespec *rqtp, struct timespec *rmtp);

int attosleep(long long attoseconds); // ???

// just use:
template<typename Duration>
int sleep_for(Duration t); // users can specify sleep in terms of hours, seconds, microseconds, femetoseconds, whatever. Actual sleep duration depends on QoI, as always.

一个很好的理由的例子是与第三方库的兼容性,该第三方库不幸地决定不在其 API 中使用类型安全的通用单元库。在这种情况下,转换应尽可能靠近 API 边界进行,以最大限度地减少不安全类型的使用范围。


话虽如此,当你确实有充分的理由时,你可以这样做:

std::chrono::milliseconds x = ...
std::uint64_t num = x.count();

请记住,预定义的计时持续时间,例如chrono::milliseconds使用签名表示,因此您需要注意确保该值适合转换为uint64_t.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 chrono:: 毫秒转换为 uint64_t? 的相关文章

  • 如何使用 ASP.NET MVC 进行 HTTP 调用?

    我正在尝试做的事情 我试图练习进行 HTTP 调用 如果这就是它的名字 来自一个简单的 ASP NET MVC Web 应用程序 为此 我尝试从以下位置获取天气详细信息打开天气地图 http openweathermap org appid
  • MVC Core IActionResult 含义

    什么是IActionResult 我尝试查看 MSDN 和其他网站 但需要通用 常见 易于理解的答案 MSDN IActionResult https learn microsoft com en us dotnet api microso
  • 将指针转换为浮点数?

    我有一个unsigned char 通常 这指向一块数据 但在某些情况下 指针就是数据 即 铸造一个int的价值unsigned char 指针 unsigned char intData unsigned char myInteger 反
  • Entity Framework 4.1 RC:Code First EntityTypeConfiguration 继承问题

    我尝试使用通用的 EntityTypeConfiguration 类来配置所有实体的主键 以便每个派生的配置类不会重复自身 我的所有实体都实现一个公共接口 IEntity 它表示每个实体必须有一个 int 类型的 Id 属性 我的配置基类如
  • C++ 私有静态成员变量

    此 C 代码在编译时产生链接器错误 A h class A public static void f private static std vector
  • 正则表达式删除某些字符周围不需要的空格

    我正在尝试从 JavaScript 文件中删除一些不需要的空格 并在将文件发送到客户端之前使用 C 和 Regex 组合文件 我有一个JavascriptHandler处理 js 文件 效果很好 这是我用来 打包 JavaScript 的函
  • C++ 中的 Java ArrayList [重复]

    这个问题在这里已经有答案了 在Java中我可以做 List
  • 使用成员作为实现者来实现接口

    我有实现 IA 的 A 类 现在我需要创建也应该实现 IA 的类 B B 类有 A 类的实例作为成员 有什么方法可以定义A的实例实现B类中的IA吗 interfase IA void method1 void method2 void me
  • 控制器中的异常处理 (ASP.NET MVC)

    当您自己的代码抛出异常并从控制器中的操作调用时 应该如何处理 我看到很多最佳实践的例子 其中根本没有 try catch 语句 例如 从存储库访问数据 public ViewResult Index IList
  • 以标准用户身份打开默认浏览器 (C++)

    我目前正在使用 ShellExecute 打开 在用户浏览器中打开 URL 但在 Win7 和 Vista 中遇到了一些麻烦 因为该程序作为服务运行提升 当 ShellExecute 打开浏览器时 它似乎读取 本地管理员 配置文件而不是用户
  • 枚举器上的 [[maybe_unused]]

    查看规格 maybe unused http en cppreference com w cpp language attributes 它指出 出现在类 typedef 变量 非静态数据成员 函数 枚举或枚举器的声明中 如果编译器对未使用
  • 套接字:监听积压并接受

    listen sock backlog 在我看来 参数backlog限制连接数量 这是我的测试代码 server initialize the sockaddr of server server sin family AF INET ser
  • 简单的文档管理系统和API [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Qt mouseReleaseEvent() 未触发?

    我有一个显示图片的库 我们称之为 PictureGLWidget 其中 class PictureGLWidget public QGLWidget 所以 PictureGLWidget 扩展了 QGLWidget 在PictureGlWi
  • System.diagnostics.process 进程在托管后无法在 IIS 上运行?

    我正在尝试从网络应用程序安装 exe 当我在本地运行应用程序 从 asp 开发服务器 时 它安装正确 但当我托管在 IIS 上时 它不起作用 我在asp net页面的Page load方法上编写了这段代码 想要在客户端计算机上安装Test
  • 在 try catch 块中返回到 catch 内是否不好?这是很好的做法

    在 try catch 块中从 C 中的 catch 块返回值是不好的做法吗 try Some code return 1 catch return 0 哪种使用 try catch 的方法是好的做法 不需要 只要返回的值是你想要的 你可以
  • 使用 roslyn 扩展 C# 语法

    我试图在没有 else 情况的情况下实现 return if return value if 因为我只想在条件有效时返回或返回一个值 我知道 有if condition return or if condition return value
  • 实体框架代理创建

    我们可以通过使用来停止在上下文构造函数中创建代理 this Configuration ProxyCreationEnabled false 在 EF 4 1 中创建代理有哪些优点和缺点 代理对于两个功能是必需的 延迟加载 导航属性在第一次
  • C/C++ 通过 Android NDK 在 JNI 中看不到 Java 方法

    我正在尝试从使用 NDK 构建的 C 类文件调用 Java 方法 它不断抛出常见的 未找到非静态方法 错误并导致整个 Android 应用程序崩溃 下面的代码片段 有些东西可能不需要 但我按原样保留它们 因为焦点 问题在于refreshJN
  • 在代码中而不是 XAML 中呈现 UserControl

    我想用RenderTargetBitmap将 UserControl 呈现为位图 而无需为其编写 XAML 当我这样做时 我得到一张空白图像 我是否错过了关键的一步 ValTool Controls VideoFisheyeOverlayC

随机推荐

  • 如何处理多个构建目标,例如开发、测试、主要?

    我目前正在从 Maven 迁移到 SBT 并且我正在努力理解如何处理多个构建目标 开发 测试 训练 生产等 例如 我有一个persistence xml看起来像这样
  • R markdown:使用for循环生成文本并显示图形/表格

    我认为 R markdown 可以使用 for 循环生成文本部分 请参阅这个帖子 https stackoverflow com questions 36674824 use loop to generate section of text
  • 如何将包含图像信息的 .xml 文件转换为 jpeg 或 png

    我的任务是为人体动作检测算法准备数据 总而言之 我收到了一些图像 xml 文件 使用 Kinect 传感器拍摄的 我想将其转换为 jpeg 或 png 以便从算法中读取 我想我必须使用 OpenCV 我确信这是一个初学者的问题 但我在互联网
  • 如何使“git log”仅显示提交日期,而不显示其他内容

    我只是想快速浏览一下项目的历史git log show only提交日期 没有其他 我们怎样才能最好地做到这一点 Update 事实证明我实际上是在要求author日期 显示的是git log 为了看到提交者日期也可以不同 运行git lo
  • python-polars使用字典按列值将数据帧分割成许多dfs

    我想使用字典通过唯一列值将单个 df 拆分为多个 df 下面的代码展示了如何使用 pandas 来完成此操作 我怎样才能在极地中执行以下操作 import pandas as pd Favorite color of 10 people d
  • 如何在 Subversion 服务器中搜索文件?

    有没有办法在颠覆存储库中搜索文件 类似于 Unix 的东西find命令 用它我可以找到存储库中文件的位置 我知道有svn list 但这给了我一个目录中所有文件的列表 我想找到文件所在的目录 您可以在服务器上使用以下命令和 grep svn
  • 无法在两个账户之间使用 Amazon S3 跨区域复制

    我希望有人可以帮助我处理 Amazon S3 跨区域复制查询 我有两个 Amazon AWS 账户 每个账户在不同区域都有一个存储桶 我想将数据从一个存储桶复制到另一个存储桶 据我了解 这应该是一个简单的创建过程 然而 我真的很挣扎 我不知
  • 浮点数如何存储在内存中[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 由于计算机只能理解下面的 0 和 1 像 12 1234 这样的浮点数如何在内存中表示为一组 0 和 1 它是否通过相应的 ASCII
  • C#中通过串口访问蓝牙数据

    所以我在Unity3D中工作 用C 编程 我听说可以通过串行端口从蓝牙适配器读取数据 我尝试使用此方法将多个蓝牙 USB 适配器连接到我的电脑上 但是 当我尝试打开串行端口时 收到一条错误消息 指出端口不存在 我只包含与问题相关的代码 但
  • Rails 分页与 Kaminari 和 has_many :through 关系

    我有三个相关模型 一个用户has many photos and belongs to dorm 一个宿舍has many users and has many photos through gt users 和一个照片类belongs t
  • 动态格式化字符串[重复]

    这个问题在这里已经有答案了 如果我想让我的格式化字符串动态可调 我可以更改以下代码 print 20s 20s Python Very Good to width 20 print str width s str width s Pytho
  • 即使安装了 gem,Ruby 也找不到所需的库

    我花了几天时间尝试安装 ruby 1 9 2 并让它与 gems 一起工作 我最终放弃了我的 Mac OSX 10 6 机器 下面是我的 Ubuntu 机器上的当前状态 任何建议将不胜感激 ruby test rb
  • 如何在 AngularJS 中观察 $stateProvider 的状态变化?

    我知道我可以运行 scope watch someItem function 但我想不出一种方法来观察变化 state current name在我的应用程序中 它在文档中 https github com angular ui ui ro
  • 调用 mysqli_error() 时发出警告[重复]

    这个问题在这里已经有答案了 可能的重复 PHP警告有帮助吗 https stackoverflow com questions 1654958 php warning help 我试图连接数据库中的三个表以显示用户选择的类别 但出现以下错误
  • HTTP 方法:DELETE 与 POST

    假设我有一个名为 Session 的资源 客户端将调用 PUT 来创建并开始新会话 当客户端完成会话后 它不应该再被访问 但由于历史 责任原因应该持续存在 要结束会话 发出 DELETE 请求 这在语义上看起来更接近预期效果 是否更合适 或
  • 分组条形图中的堆叠条形

    我有下面的图表 test lt expand grid cat LETTERS 1 5 cond c F T year 2001 2005 test value lt floor rnorm nrow test 100 test value
  • 是否可以获取指向 Windows 7 中默认音频端点设备缓冲区的指针?

    此处使用 Win32 API 我一直在 MSDN 文档中搜索 Windows Vista 中的核心音频服务 但没有找到保护默认音频缓冲区的方法 我的目标是建立正在播放的音频的实时频谱图数据 有什么方法可以在通过扬声器播放音频流之前访问它吗
  • SCNetworkReachability 是否尊重 HTTP 代理设置?

    恐怕这个问题的答案是否定的 但我希望有人能够提供明确的答案 因为当前的 iOS SDK 文档中没有记录该答案 我们看到 NSURLConnection 能够连接到的情况https mysite com https mysite com通过
  • 显示日期处于财政年度的哪个季度

    我正在尝试构建一个查询 该查询将映射两列 一列是表中的日期 第二列是别名 以显示该日期属于哪个季度和财政年度 不幸的是 我没有足够的 SQL 知识 不知道从哪里开始 我知道我会结合使用以下方法来做到这一点getdate and datead
  • 将 chrono:: 毫秒转换为 uint64_t?

    假设我有可变的毫秒数x chrono milliseconds x std chrono duration cast