gpt4 book ai didi

c++ - c++ 中是否有任何日期时间模块

转载 作者:行者123 更新时间:2023-12-05 01:09:15 25 4
gpt4 key购买 nike

c++中有日期时间模块吗?
我在谷歌上进行了一些研究,并了解了 <ctime> 头文件,但它超出了我的想象。

还有什么可以做我的工作的吗?

最佳答案

在 C++ 标准中:<chrono>

C++11

从 C++11 开始,标准库包含 date & time utilities, available in the <chrono> header , 在 std::chrono 中的构造命名空间。

您会发现:

  • 时钟
  • 时间点
  • 持续时间
  • 一个灵活的mechanism用于从字符串中解析日期和时间值

该库是大量模板化的,因此您可以使用您选择的类型作为原始表示(甚至是浮点类型),并设置您自己的分辨率。

使用示例:How to get current time and date in C++?

请注意 std::chrono设施有点兼容旧的<ctime> header 类型。例如,“系统时钟”类has methods用于与 <ctime> 相互转换时间表示,time_t .如果您正在组合 C 和 C++ 代码,或者需要在某处公开 C 接口(interface),这将对您很有用;否则 - 尝试避免 <ctime> - 基于代码。

C++20

新增2020年批准的新标准版本:

  • 时区
  • 日历
  • 更多时长类型
  • 更多时间点类型
  • 更多时钟

超出标准:Howard Hinnant 的日期库

正如评论者@AndyG 和@doug 所建议的,Howard Hinnant 是“C++ 日期和时间专家”,他的大部分工作实际上已经进入标准 - 但不是全部。

Howard 维护着一个他自己的库/库集,名为“Date”。

它基于 C++11 <chrono> ,但它的变化并不完全是 C++20 中添加的;如果您使用 C++17 或更早版本,则特别有用。它补充说:

  • 时区
  • 日历,包括儒略历和伊斯兰历
  • 更多时长类型
  • 更多时间点类型

我假设最终,这里的所有好东西都会标准化,但这还没有发生。

关于c++ - c++ 中是否有任何日期时间模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65444812/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com