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