Почему определенный пользователем конструктор перемещения отключает неявный конструктор копирования?

Пока я читал boost / shared_ptr.hpp, я увидел этот код:

//  generated copy constructor, destructor are fine...

#if defined( BOOST_HAS_RVALUE_REFS )

// ... except in C++0x, move disables the implicit copy

shared_ptr( shared_ptr const & r ): px( r.px ), pn( r.pn ) // never throws
{
}

#endif

Что делает комментарий «Сгенерированный конструктор копирования, деструктор в порядке, за исключением C ++ 11, перемещение отключает неявное копирование» значит здесь? Должны ли мы всегда писать копию ctor для предотвращения этой ситуации в C ++ 11?

Ответы на вопрос(2)

Ваш ответ на вопрос