Я использовал следующий код для перегрузки оператора присваивания:
SimpleCircle SimpleCircle::operator=(const SimpleCircle & rhs)
{
if(this == &rhs)
return *this;
itsRadius = rhs.getRadius();
return *this;
}
My Copy Constructor:
SimpleCircle::SimpleCircle(const SimpleCircle & rhs)
{
itsRadius = rhs.getRadius();
}
В вышеперечисленном операторе перегрузки кода создается конструктор копирования, так как создается новый объект; поэтому я использовал приведенный ниже код:
SimpleCircle & SimpleCircle::operator=(const SimpleCircle & rhs)
{
if(this == &rhs)
return *this;
itsRadius = rhs.getRadius();
return *this;
}
Его работа отлично и проблема конструктора копий устранена, но есть ли какие-то неизвестные проблемы (для меня) относительно этого?