Связь между «резервом» и «итератором» с помощью std::vectorC++

Программы на C++. Форум разработчиков
Anonymous
Связь между «резервом» и «итератором» с помощью std::vector

Сообщение Anonymous »

При использовании метода резерва() с этим объектом итератора программа выдает непредвиденную ошибку.
Когда я использую резерв() без него он работает как положено, но когда я использую итератор, он вообще не работает.
код, который работает:vector nums{1,2,3,4,5}, numsT{};

numsT.reserve(50);
numsT.insert(numsT.begin(), nums.begin(), nums.end() - 1);

Код, который не работает:
vector nums{ 1,2,3,4,5 }, numsT{};
vector ::iterator first{ nums.begin() }, last{ nums.end() - 1 }, position{ numsT.begin() };

numsT.reserve(50);
numsT.insert(position, first, last);


Подробнее здесь: https://stackoverflow.com/questions/791 ... -stdvector

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