У меня есть std:: deque, и я хочу вставить элемент по указанному индексу (я знаю, что std:: list будет лучше в этом). Функция deque:: insert() принимает итератор, чтобы указать место для вставки. Учитывая индекс, как я могу получить итератор, указывающий на это местоположение, чтобы я мог передать этот итератор для insert()?
Например:
void insertThing ( deque<Thing> & things, Thing thing, size_t index )
{
deque<Thing>::iterator it = /* what do I do here? */
things.insert ( it, thing );
}
Я уверен, что это очень простой вопрос, и я прошу прощения за это. Прошло много времени с тех пор, как я использовал STL, и я ничего не вижу в списке участников std:: deque, который явно делает то, что я хочу. Спасибо.