假设我有一个C++类,已经正确实现了复制构造函数和重载的=操作符。所谓“正确实现”是指它们能够正常工作并执行深拷贝:
Class1::Class1(const Class1 &class1)
{
// Perform copy
}
Class1& Class1::operator=(const Class1 *class1)
{
// perform copy
return *this;
}
现在假设我也有这个构造函数:
Class1::Class1(Class1 *class1)
{
*this = *class1;
}
我的问题是上述构造函数是否符合惯例?这是我继承和维护的代码。