Сегодня рассказывал о реализации оператора копирования через swap, и по ходу в качестве примера привёл вариант как делать НЕ надо.
X& X::operator = ( X const &x )
{
this->~X();
return *(new (this) X(x));
}
Дык, вот я маленько в шоке от того, что меня активно стали убеждать, что именно так очень даже неплохо делать ... Быстро, просто, ничего лишнего...
Э ... интересно мнение студии.
И ещё интересно мнение на тему конструкции
X::X( X const & x )
{
// ... default init
operator =(x);
}
P.S.
Это не студенты. Вполне себе программисты со стажем. По сему задумался.