«переместить» два вектора вместеC++

Программы на C++. Форум разработчиков
Гость
«переместить» два вектора вместе

Сообщение Гость »


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

std::vector a(100); // здесь просто какой-то случайный размер std::vector b(100); a.insert(std::end(a), std::begin(b), std::end(b)); Однако это предполагает копирование, которого я хочу избежать. Есть ли способ использовать семантику перемещения, чтобы объединить их?
Я в этом очень сомневаюсь, поскольку вектор должен быть непрерывным. Однако есть ли способ сделать это с помощью deque?

Вернуться в «C++»