Przenieś konstruktor i listę inicjalizacji

Chcę zaimplementować konstruktory przenoszenia (bez konstruktora kopii) dla określonego typu, który musi być typem wartości w aboost::unordered_map. Nazwijmy ten typComposite.

Composite ma następujący podpis:

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
}

Chcę to napisaćboost::unordered_map< Key , Composite > nie wymaga konstruktora kopii i używa konstruktora ruchu. Jeśli to możliwe, nie chcę używać konstruktora kopiiBase na liście inicjalizacji konstruktora ruchuComposite.

czy to możliwe?

questionAnswers(1)

yourAnswerToTheQuestion