Связь между «резервом» и «итератором» с помощью 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
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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