«Сдвинуть» два вектора вместе

Если у меня есть два вектора и я хочу объединить их в один, я могу сделать это следующим образом:

std::vector<T> a(100); // just some random size here
std::vector<T> b(100);

a.insert(std::end(a), std::begin(b), std::end(b));

Это включает в себя копирование, хотя я хочу избежать. Есть ли способ использовать семантику перемещения, чтобы собрать их вместе?
Я очень сомневаюсь в этом, какvector должен быть смежным. Однако есть ли способ сделать это сdeque?

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

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