В С++ концепция возврата ссылки из оператора присваивания копий неясна для меня. Почему оператор копирования не может вернуть копию нового объекта? Кроме того, если у меня есть класс A и следующее:
A a1(param);
A a2 = a1;
A a3;
a3 = a2; //<--- this is the problematic line
Оператор = определяется следующим образом:
A A::operator =(const A& a)
{
if (this == &a)
{
return *this;
}
param = a.param;
return *this;
}