gpt4 book ai didi

c++ - 如何打印 map 的索引?

转载 作者:行者123 更新时间:2023-11-28 07:11:44 26 4
gpt4 key购买 nike

我有一个循环

for (itr=addr->second.begin(); itr!=addr->second.end(); itr++)

如果我在 map 中有 10 个条目,并且如果我想打印出 Im in 中的索引(如 1,2,3,4..10),是否有任何方法可以在不使用另一个变量的情况下将其打印出来。谢谢。

最佳答案

可以打印您所在位置的索引,但效率极低:std::map<...> 中的项目没有索引。不过,您可以将索引确定为距起点的距离:

for (itr=addr->second.begin(); itr!=addr->second.end(); ++itr) {
std::cout << (std::distance(addr->second.begin(), itr) + 1) << ','; // not recommended!
}

也就是说,是的,这是可能的,但我肯定不会这样做!我不记得曾经需要为 std::map<...> 中的对象创建索引。 .如果我必须获得 std::map<...> 的值结合索引,我会使用另一个变量或自定义迭代器来跟踪 map 的迭代器和计数器。

关于c++ - 如何打印 map 的索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20863505/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com