gpt4 book ai didi

c++ - 从函数返回对象时调用C++中的复制构造函数?

转载 作者:IT老高 更新时间:2023-10-28 13:00:24 29 4
gpt4 key购买 nike

我知道复制构造函数是在三个实例上调用的

  1. 在实例化一个对象并使用另一个对象的值对其进行初始化时。
  2. 按值传递对象时。

3.当一个对象按值从函数中返回时。

我对 3 号有疑问如果在返回对象值时调用复制构造函数,如果在函数中本地声明对象,它不应该产生问题。

我的意思是复制构造函数是一个深拷贝,并且将对象的引用作为参数

最佳答案

正是为了避免问题而调用它。作为结果的新对象从本地定义的对象中初始化,然后本地定义的对象被销毁。

在深拷贝用户定义的构造函数的情况下,都是一样的。首先为将作为结果的对象分配存储空间,然后调用复制构造函数。它使用传递的引用来访问本地定义的对象并将所需的内容复制到新对象。

关于c++ - 从函数返回对象时调用C++中的复制构造函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/665781/

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