这段代码将如何运作?

时间:2014-01-02 07:42:49

标签: c++

假设我们正在创建两个类Base的对象:

Base *b1 = new Base();
Base *b2 = new Base();
之后,我确实喜欢:

*b1 = *b2;
那么,会发生什么?

根据我的理解:

在这种情况下将使用

赋值运算符 - 默认值由编译器生成或由“Base”类设计者提供。构造函数应该“构造”对象,并且在呈现的场景中,两个对象(由b1和b2指向)已经创建。

1 个答案:

答案 0 :(得分:2)

Base引用的p2对象将被复制到p1引用的对象中,除非另有Base::operator=的实现。