Mover construtor e lista de inicialização

Eu quero implementar construtores de movimento (sem construtor de cópia) para um determinado tipo que precisa ser um tipo de valor em umboost::unordered_map. Vamos chamar esse tipoComposite.

Composite tem a seguinte assinatura:

struct Base
{
  Base(..stuff, no default ctor) : initialization list {}
  Base(Base&& other) : initialization list {} 
}

struct Composite
{
  Base member;
  Composite(..stuff, no default ctor) : member(...) {}
  Composite(Composite&& other) : member(other.member) {} // <---- I want to make sure this invokes the move ctor of Base
}

Eu quero escrever issoboost::unordered_map< Key , Composite > não requer o construtor de cópia e apenas usa o construtor de movimento. Se possível, não quero usar o construtor de cópia deBase na lista de inicialização do construtor de movimento deComposite.

Isso é possível?

questionAnswers(1)

yourAnswerToTheQuestion