假设我们正在创建两个类Base
的对象:
Base *b1 = new Base();
Base *b2 = new Base();
之后,我确实喜欢:
*b1 = *b2;
那么,会发生什么?
根据我的理解:
在这种情况下将使用赋值运算符 - 默认值由编译器生成或由“Base”类设计者提供。构造函数应该“构造”对象,并且在呈现的场景中,两个对象(由b1和b2指向)已经创建。
答案 0 :(得分:2)
Base
引用的p2
对象将被复制到p1
引用的对象中,除非另有Base::operator=
的实现。