POD 类已初始化,并已初始化放置新默认值?

2024-01-07

如果我使用新的放置来初始化 POD 类,我可以假设内存将默认初始化(为零)吗?这个资源 http://www.fnal.gov/docs/working-groups/fpcltf/Pkg/ISOcxx/doc/POD.html明确指出,如果您显式调用零参数默认构造函数,则字段将被默认初始化,但不清楚使用放置 new 的默认实现(传递地址)这是否成立。在这种情况下,内存归零是标准行为吗?


从一开始就:

5.3.4/15:

  • If the 新的初始化器是这样的形式(),则该项被值初始化(8.5);

8.5/5:

To 值初始化T 类型的对象意味着:

  • 如果 T 是具有用户声明的构造函数 (12.1) 的类类型(第 9 条),则调用 T 的默认构造函数(如果 T 没有可访问的默认构造函数,则初始化格式错误);

  • 如果 T 是没有用户声明的构造函数的非联合类类型,则 T 的每个非静态数据成员和基类组件都进行值初始化;

  • 如果 T 是数组类型,则每个元素都是值初始化的;

  • 否则,该对象将被零初始化

第一个项目符号在这里不适用,因为您有 POD 类型,因此您不能拥有用户声明的构造函数。您的类型的成员只能是 POD 类型,例如int, float等等或者也是一个 POD 或 POD 类型数组的嵌套结构。因此最终他们每个人都以最后一个项目符号结束:“否则,该对象将被零初始化”。

发生此初始化是因为 POD 类是在您提供的内存中初始化的。内存是由操作系统分配的还是您提供的地址并不重要。

所以,恕我直言,答案是肯定的 - 成员将被零初始化。

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

POD 类已初始化,并已初始化放置新默认值? 的相关文章

随机推荐

  • O(n) 算法的计算时间可以超过 O(n^2) 吗?

    假设我有两种算法 for int i 0 i lt n i for int j 0 j lt n j do something in constant time 这自然是O n 2 假设我也有 for int i 0 i lt 100 i
  • 渐进式 Web 应用程序中的重定向

    我试图在通知单击时重定向到渐进式网络应用程序中的特定网址 但它不会重定向 情况 1 如果 Web 应用程序未添加到主屏幕 则在收到通知后单击浏览器窗口将打开并重定向到所需的 URL 情况 2 如果 Web 应用程序添加到主屏幕 则登陆页面是
  • PostgreSQL 9.1 时区

    我正在使用 postgresql 在数据库中存储一些日期 在我的应用程序中 它完全了解时区是至关重要的 我正在客户端 服务器和数据库之间进行一些基本测试 我从 GWT 中执行的浏览器应用程序发送日期 并读取 postgresql 上的日期
  • iTunes Connect - 无法邀请预发行应用程序的“内部测试人员”

    我的应用程序已获准通过新的 Apple TestFlight 应用程序进行分发 我试图通过邀请 内部测试员 iTunes Connect gt Prerelease gt Internal Testers但我看到的只是两个信息框 要开始测试
  • Pycharm 不接受“list[Example]”作为项目列表的类型提示[重复]

    这个问题在这里已经有答案了 我在 PyCharm 中发现了一个奇怪的类型 Example是我自己的班级 但我想这并不那么重要 因为 IDE 正在抱怨list类型没有定义 getitem 这是不正确的方法 我想知道这是一个错误还是我以错误的方
  • Magento - 对自定义报价总计字段应用税

    我为 Magento 创建了一个附加费模块 它在报价中添加了一个自定义总计字段 附加费含税输入到 Magento 中 我已成功获取将附加费添加到报价中的模块 并且结帐页面上的总计是正确的 当我尝试对附加费征税 以便将其包含并显示在结账页面的
  • jQuery Ajax Post 与数据

    当使用某些参数单击按钮时 我尝试调用 PHP 文件 它一直执行到 jsfile js 中的警报语句为止 之后ajax部分没有被执行 帮助我 主要 html
  • 当应用程序在后台运行时获取 GPS 位置更新

    我有一个 Android 应用程序 可以跟踪客户位置并每 10 秒发送一次位置 但是 在 android O 中 位置更新每小时会获得几次 正如有关 android O 中 GPS 位置更新限制的文档中所述 无论如何 为了克服这个问题 我使
  • C/C++ MPI 加速未达到预期

    我正在尝试编写一个 MPI 应用程序来通过计算机集群加速数学算法 但在此之前我正在做某种基准测试 但最初的结果并不像预期的那么好 测试应用程序在 4 核时具有线性加速 但 5 6 核并未加速应用程序 我正在使用 Odroid N2 平台进行
  • 在 Sympy.mpmath.plot 中更改图形大小

    我希望这个问题不是太初级 我已经广泛搜索了解决方案 但尚未找到 我最近开始使用 Jupyter Notebook 和 Sympy 在微积分 II 课上做笔记和做作业 这真是一个巨大的好处 然而 我唯一的问题是我无法弄清楚如何配置绘图的大小
  • 什么是堆栈溢出?

    什么是堆栈溢出错误 它可能出现在什么类型的程序 编程语言中 它不太可能出现在 Web 应用程序代码中吗 From 维基百科 http en wikipedia org wiki Stack overflow 在软件中 会发生堆栈溢出 当内存
  • 如果一个代理关闭,流应用程序中的 KafkaStream EXACTLY_ONCE 会导致重新平衡失败

    我有一个 Kafka 流应用程序 其中 kafka streams 和 kafka clients 均为 2 4 0 具有以下配置 properties put StreamsConfig BOOTSTRAP SERVERS CONFIG
  • jquery mouseover 和 mouseout 错误

    当我滚动一个元素 以查看包含该元素的总体数据 时 我试图获得某些内容的预览 并且当我推出时 一切都恢复原样 问题是 当我快速移动鼠标光标时 有时鼠标移出方法不会发生 并且数据保持更新 但我不希望出现这种情况 知道我该怎么做吗 documen
  • 垃圾收集期间崩溃的原因

    一段时间以来 我一直在努力解决 C 应用程序崩溃的问题 该应用程序也使用相当多的 C CLI 模块 这些模块主要是本地库的包装器来访问设备驱动程序 崩溃并不总是很容易重现 但我能够收集六个崩溃转储 这些崩溃转储表明程序总是在垃圾收集期间因访
  • ipsec.py 找不到属性 IPPROTO_IP 和 socket.IPPROTO_IP

    我安装了 python 2 6 的模块 scapy 当我导入此模块时 我收到此警告 警告 无法导入层 ipsec 模块 对象没有属性 IPPROTO AH 我查看了套接字属性 但没有找到 IPPROTO AH 属性 此外 我尝试编辑模块 i
  • 如何在shell脚本中从fork子进程获取PID

    我相信我可以从父进程派生出 10 个子进程 下面是我的代码 bin sh fpfunction n 1 while n lt 20 do echo Hello World n times sleep 2 echo Hello World2
  • Android Studio Windows:调试器进程已完成,退出代码为 -1073741515 (0xC0000135)

    我的应用程序中有本机代码和 Java 因此我需要能够调试 Java 和本机代码 升级到 Android Studio Bumblebee 后 2021 1 1 补丁 2 我无法再在启用本机调试的情况下调试我的应用程序 如果 调试类型 设置为
  • 添加 DOM 元素,正确的方法是什么?

    这个问题可能很愚蠢 或者很基本 有人可以解释一下添加 DOM 元素的最佳方法是什么吗 我们有两种添加 DOM 元素的方法 设想 需要添加 strong Hi strong 在现有的 div div 通过编辑其中的 HTML document
  • 如何将图像从 Applet 传递到 JSF 支持 bean

    我正在使用一个 Web 应用程序 其中有一个 Java Applet 可以将 wacom 设备中的图像捕获到RenderedImage目的 applet 本身嵌入到 JSF 2 0 页面中 我需要传递创建的RenderedImage从 Ap
  • POD 类已初始化,并已初始化放置新默认值?

    如果我使用新的放置来初始化 POD 类 我可以假设内存将默认初始化 为零 吗 这个资源 http www fnal gov docs working groups fpcltf Pkg ISOcxx doc POD html明确指出 如果您