gpt4 book ai didi

c++ - 复制构造函数和赋值运算符

转载 作者:IT老高 更新时间:2023-10-28 14:01:28 34 4
gpt4 key购买 nike

如果我重写 operator=,复制构造函数会自动使用 new 运算符吗?同样,如果我定义了一个复制构造函数,operator= 会自动“继承”复制构造函数的行为吗?

最佳答案

不,它们是不同的运算符。

复制构造函数用于创建一个新对象。它将现有对象复制到新构造的对象。复制构造函数用于从旧实例初始化新实例实例。将变量按值传递给函数时不一定会调用它或作为函数的返回值。

赋值运算符是处理一个已经存在的对象。赋值运算符用于将现有实例更改为与右值相同的值,这意味着实例必须是如果它有内部动态内存,则销毁并重新初始化。

有用的链接:

关于c++ - 复制构造函数和赋值运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5368258/

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