Pta*_*uth 10 c++ iterator stl deque
我有一个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 );
}
Run Code Online (Sandbox Code Playgroud)
我确信这是一个非常基本的问题,我为此道歉.自从我使用STL已经有很长一段时间了,我在std :: deque的成员列表中看不到任何显然符合我想要的东西.谢谢.
Ser*_*kov 22
void insertThing ( deque<Thing> & things, Thing thing, size_t index )
{
deque<Thing>::iterator it = things.begin() + index;
things.insert ( it, thing );
}
Run Code Online (Sandbox Code Playgroud)
Ste*_*hen 10
deque支持随机访问,所以你应该可以说
things.insert( my_deque.begin() + index, thing);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4146 次 |
| 最近记录: |