“原子”和“cstdatomic”有什么区别?

2023-11-22

有人可以澄清一下包含选项之间的区别吗#include <atomic> and #inlucde <cstdatomic>?

我猜没有,因为它的行为相同?

我问这个问题是因为在我的 debian 系统上我只有atomic,而在我的 kubuntu 系统上我有 cstdatomic。

  • Debian 上的编译器:版本 4.7.2 (Debian 4.7.2-4)

  • Kubuntu 上的编译器:版本 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)


现有的两个答案都是错误的,大多数评论也是错误的。

<cstdatomic>不是定义在中的标头any标准。

它是在旧的 C++0x 草案中定义的,但不在最终的 C++11 标准中,仅<atomic>是。因此它被作为 GCC 4.4 实验性 C++0x 支持的一部分包含在内,但随后在 C++0x 草案中重命名(由 2009 年完成)后,为以后的版本重命名。N2992).

你不应该使用<cstdatomic>除非您坚持使用 GCC 4.4 并且乐意使用不完整且有缺陷的 C++11 原子版本。 (我不知道为什么 Kubuntu 的 GCC 4.6 包含标头,它不在上游 GCC 4.6 版本中,它一定是 Ubuntu 或 Kubuntu 或 Linaro 补丁。)

<atomic>是标准 C++11 标头,您可以依赖它来实现任何合理符合 C++11 的实现。

<stdatomic.h>是C11头文件,但是C++11库是基于C99库的,所以不包含<stdatomic.h>并且不提供<cstdatomic>与之相对应。

编辑:从 C++23 开始,有一个<stdatomic.h>C++ 库中的头文件,但仍然没有<cstdatomic>.

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

“原子”和“cstdatomic”有什么区别? 的相关文章

随机推荐

  • 这个 bash 叉子炸弹是如何工作的? [复制]

    这个问题在这里已经有答案了 根据维基百科 以下是一个非常优雅的 bash fork 炸弹 它是如何工作的 拆开来看 主要分为三大块 Defines a function It takes no arguments The body of t
  • ADODB.Stream 错误“800a0bbc”写入文件失败

    当我更改托管提供商时 我显示了奇怪的错误 ADODB Stream 错误 800a0bbc 写入文件失败 cp portal upload asp 第 63 行 我提供了所需的权限 它解决了更新 Access DB 问题 但文件上传仍然没有
  • XMLHttpRequest 分块响应,仅读取正在进行的最后一个响应

    我正在将分块数据从 NodeJS 应用程序发送回浏览器 这些块实际上是 json 字符串 我遇到的问题是每次onprogress调用函数时 它会添加完整数据的字符串 这意味着第二个响应块将附加到第一个响应块 依此类推 我只想获取 刚刚 收到
  • 在 R 中使用 grep 对多个加载的包进行搜索函数

    假设我有包裹base dplyr data table tidyr等加载使用sapply sapply c dplyr data table tidyr library character only TRUE 因此 要检查特定包中的函数列表
  • 如何从 MySQL 数据库检索图像并在 html 标签中显示

    我使用 phpmyadmin 创建了一个带有表的 MySQL 数据库 我使用 BLOB 列创建了此表来保存 jpeg 文件 我对 php 变量有疑问 result here 到目前为止我的代码 catalog php img src wid
  • 使用可变参数重载函数

    这不会编译 public class Methods public static void method Integer i System out print A public static void method int i System
  • SQLite 表约束 - 多列上唯一

    我可以在 SQLite 网站上找到这方面的语法 图表 但没有示例 而且我的代码崩溃了 我有其他表在单个列上具有唯一约束 但我想在两列上向表添加约束 这就是我所遇到的导致 SQLiteException 并显示消息 语法错误 的原因 CREA
  • PrimeFaces 禁用按 Enter 键提交

    PrimeFaces 禁用按 Enter 键提交 我正在运行在 WildFly 8 2 Final 上运行的 PrimeFaces 5 1 我有一个对话框 有两个输入数字和两个按钮 第一个 inputNumber 对 ajax 模糊事件进行
  • 卡夫卡模式订阅。新主题未触发重新平衡

    根据有关的文档卡夫卡java文档 if I 订阅模式 创建与模式匹配的主题 应该进行重新平衡 这使得消费者可以阅读该新主题 但这并没有发生 如果我停止并启动消费者 它确实会获取新主题 所以我知道新主题符合模式 这个问题可能有重复https
  • Apache HTTP 服务器和 Apache Tomcat 之间的区别? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 Apache HTTP S
  • 将对象复制到对象(使用 Automapper ?)

    我有一堂课 public class Person public string FirstName get set public string LastName get set 我有两个 Person 实例 person1 和 person
  • playframework - IOException 无法分配内存

    我的系统是Mint 12 64位 我已经安装了类型安全堆栈并创建了一个新的播放应用程序 在不修改代码的情况下 我尝试运行它 这是输出 http pastebin com 6XwmsbAE Play 抱怨此错误消息 IOException C
  • NLTK/pyNLTK 可以“按语言”(即非英语)工作吗?如何工作?

    我如何告诉 NLTK 以特定语言处理文本 有时我会编写一个专门的 NLP 例程 在非英语 但仍然是印欧语 文本域上进行词性标记 标记化等 这个问题似乎只解决不同的语料库 而不是代码 设置的变化 德语 POS 标记 或者 是否有专门用于 py
  • 创建新的通用结构的正确方法是什么?

    我正在尝试创建一个可以初始化为某种类型的通用结构T 它看起来像这样 pub struct MyStruct
  • jQuery 选择器帮助 - 如何查找 ID 以特定字符开头和结尾的元素

    我有一个动态创建的页面 它可以有许多不同的带有 ID 的单选按钮 如下所示
  • 某些 HTML 标记中的“生成”属性有何用途?

    我看到它在 HTML 标签中使用 但我感觉它可以与大多数 HTML 标签一起使用 我大概能猜出这是什么意思 但我更好奇使用它有什么好处 我试图用谷歌搜索一些有关它的参考资料 但找不到任何资料 所以我来找你们专家 谢谢 Example
  • Android ACTION_IMAGE_CAPTURE 意图

    我们正在尝试使用本机相机应用程序让用户拍摄新照片 如果我们省略了 它就可以正常工作EXTRA OUTPUT extra并返回小位图图像 然而 如果我们putExtra EXTRA OUTPUT 在启动之前 一切都会正常进行 直到您尝试点击相
  • JasperReports 的最小依赖关系

    我希望在我的一个项目中使用 JasperReports 4 5 0 并且想知道仅生成 PDF 的最小依赖项是什么 我尝试浏览他们的网站和自述文档 但一无所获 我也遇到过这个安装维基这看起来非常过时 版本 1 2 2 是否有所需 jar 的最
  • 删除无效/不完整的多字节字符

    我在用户输入上使用以下代码时遇到一些问题 htmlentities string ENT COMPAT UTF 8 当检测到无效的多字节字符时 PHP 会抛出一个通知 PHP 警告 htmlentities path to file php
  • “原子”和“cstdatomic”有什么区别?

    有人可以澄清一下包含选项之间的区别吗 include