我有这个任务:
的main.cpp
polygon &q = polygonList->top();
polygon p = q;
我想使用操作符覆盖来执行深层复制。
polygon.cpp
polygon& polygon::operator=(const polygon &obj)
{
// deep copy here
return *this;
}
polygon.hpp
public:
polygon& polygon::operator=(const polygon &obj);
知道为什么它没有打到上面?
编辑我知道这不是因为我的调试器在覆盖返回时没有中断
答案 0 :(得分:1)
您正在使用复制构造函数初始化p
。
而不是polygon p = q;
,请尝试:
polygon p;
p = q;