C++ 中隐式定义的复制构造函数是否有效?也为成员调用复制构造函数,对吗?

发布于 2024-10-16 11:29:37 字数 97 浏览 3 评论 0原文

只是想仔细检查 C++ 类的默认(由编译器隐式定义)复制构造函数是否对每个成员变量执行复制构造函数,并使用旧值获取每个成员的复制值,而对于原子对象,仅使用位复制(例如整数和浮点数)

Just want to double check that the default (implicitly defined by compiler) copy constructor for C++ classes performs the copy constructor on each member variable as well using the old value to get the copied value for each member and for atomic objects just uses a bit copy (e.g. ints and floats)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

梦忆晨望 2024-10-23 11:29:37

是的,这正是它的作用。

Yes, that is exactly what it does.

素衣风尘叹 2024-10-23 11:29:37

是的。 C++ 中的默认复制构造函数将为类型中的每个成员进行逐成员复制初始化。

至于原始类型(例如 int 和 float )的复制究竟是如何完成的,我不能肯定地说。我的猜测是它是特定于实现的,但大多数编译器只是进行一点一点的复制。

Yes. The default copy constructor in C++ will be member-wise copy initialization for every member in the type.

As to how exactly the copy is done for primitive types such as int and float I cannot say for certain. My guess is it's implementation specific but most compilers just do a bit by bit copy.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文