Por que o construtor de movimento definido pelo usuário desabilita o construtor de cópia implícito?

Enquanto eu estou lendo boost / shared_ptr.hpp, eu vi este código:

//  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

O que o comentário "gerado construtor de cópia, o destruidor é bom, exceto em C + + 11, move desativa a cópia implícita" significa aqui? Devemos sempre escrever a cópia para nos impedir que esta situação em C + + 11?

questionAnswers(2)

yourAnswerToTheQuestion