Я просматривал документацию C ++ для функции, которая могла бы перемещать диапазон элементов из одного контейнера в другой, используя семантику перемещения.Однако я не нашел такой функции.Чего мне не хватает?
Как бы я сделал следующее без копирования и использования явных циклов?
// Move 10 elements from beginning of source to end of dest dest.end() <- move(source.begin(), source.begin() + 10)
Я думаю, вы ищете std::move в <algorithm>:
std::move
<algorithm>
std::move(source.begin(), source.begin() + 10, std::insert_iterator(dest, dest.end()));
Это похоже на std::copy, за исключением того, что он назначает перемещение вместо копий.
std::copy