0
Я хотел бы предоставить определение конструктора только один раз - для lvalue и rvalue.вызов rvalue-constructor из lvalue-constructor
class A;
class B {
B(A const& a): B(A(a)) {}
B(A&&);
};
Гарантируется ли B::B(A&&)
называться по B::B(A const&)
?
Ну, вышесказанное не компилируется, так как 'A' не определен? – Yakk
Есть ли причина, по которой вы не используете совершенную пересылку? – TartanLlama
Это эквивалентно определению только 'B (A)'. Сохраните несколько нажатий клавиш. – Casey