Столкнулся с непонятной проблемой, а именно: не могу вставить элемент в std::vector<int>:
std::vector<int> results; results.push_back(1); results.push_back(2); results.push_back(3); results.push_back(4); results.push_back(5);
Теперь хочу вставить еще одно значение между 3 и 4:
results.insert(2, 10);
В результате ничего не меняется, что здесь не так делаю?
insert() первым аргументом принимает не индекс, а итератор, то есть в данном случае может быть так:
results.insert(results.begin() + 3, 10);
При этом вставляемый элемент будет находиться перед тем, на который указывает итератор (а не после).
@aveal Пооонял, моя ошибка...
А я-то уже начал думать компьютер взбунтовался и не вставляет элемент 😀