当我定义一个类时,如果我需要深拷贝,我需要定义我自己的拷贝构造函数。 那么,是否也需要定义赋值运算符呢? 如果跳过,赋值是否做浅拷贝?
最佳答案
是的,你需要。这被称为 Rule of Three : 当复制构造函数、赋值运算符或 dtor 中的一个被定义时,其他两个可能必须被定义。存在异常(exception),但在标准情况下,您必须...
自 C++11 起,Rule of Five适用于处理移动语义。
关于c++ - 在 C++ 中,我可以在定义自己的复制构造函数后跳过定义赋值运算符吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59158929/