复制对象声明中的构造函数并从函数返回

copy constructor in object declaration and return from function

本文关键字:函数 返回 构造函数 对象 声明 复制      更新时间:2023-10-16

难道我们不能简单地重载"="操作符来代替在对象声明中使用复制构造函数并从函数返回

someclass X = Y;
X=somefunction();

可以在某个类中重载"="操作符而不提供复制构造函数吗?

是否有任何情况下,需要复制构造函数和重载"="操作符,以避免指针变量从两个单独的对象指向相同的内存位置?

不,这是两个不同的概念,它们的存在都是出于性能原因。

  • 复制构造函数用于创建对象(从现有对象)。
  • 赋值用于对象已经存在,但是你想给它赋一个新值。

如果你提供其中一个,也提供另一个