Witam
Mam 2 pytania do poniższego kodu typowo pod rozmowę rekrutacyjną bo w codziennym programowaniu to niżej wystarcza.:)
list<unique_ptr<int>> l4;
l4.emplace_back(make_unique<int>(4));
l4.emplace_back(make_unique<int>(5));
l4.emplace_back(make_unique<int>(6));
list<unique_ptr<int>> l5;
l5.emplace_back(make_unique<int>(7));
l5.emplace_back(make_unique<int>(8));
for (auto& x: l5)
l4.emplace_back(move(x)); //after this one l5 size is still 2, but its elements of type unique_ptr has nullptr int members
1.) Jest jakiś sposób by zainicjować liste l4, l5 za pomocą konstruktora, tudzież initializer_list? Mi się wydaje że nie bo jak próbuję to nic się nie kompiluje, wygląda jakby initializer_list kopiował a nie przenosił obiekty do kontenera.
2.) Jest jakaś metoda z stl-a którą można by przenieść obiekty z l5 do l4 bez wczesniejszego robienia resize na l4:
l4.resize(l4.size() + l5.size())
move(l5.begin(), l5.end(), l4.end())
Ja nic nie znalazłem, wygląda jakby nie było takiej metody.