Czyli ogólnie chcesz przenieść unique_ptr z kontenera do kontenera? Jako że nie można kopiować unique_ptr, trzeba go przenieść przez std::move. Demo przenoszenia przedmiotu do ekwipunku:
#include <memory>
#include <vector>
int main(){
std::vector<std::unique_ptr<int>> items, inventory;
// stan poczatkowy
items.emplace_back(std::make_unique<int>(123));
auto iterator = items.begin();
// przenoszenie miedzy kontenerami
inventory.emplace_back(std::move(*iterator));
items.erase(iterator);
}