假设我有以下代码:
vector<int> list;
for(auto& elem:list) {
int i = elem;
}
Run Code Online (Sandbox Code Playgroud)
我可以在elem不保持单独迭代器的情况下找到向量中的位置吗?
有没有一种方便的方法来获取C++ 11 foreach循环中当前容器条目的索引,就像enumerate在python中一样:
for idx, obj in enumerate(container):
pass
Run Code Online (Sandbox Code Playgroud)
我可以想象一个迭代器也可以返回索引或类似的东西.
当然我可以有一个计数器,但通常迭代器不保证它们在容器上迭代的顺序.