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 のメンバー リストには、明らかに私が望んでいることを実行するものは何もありません。ありがとう。