gpt4 book ai didi

c++ - 删除时如何遍历 vector 图?

转载 作者:行者123 更新时间:2023-11-27 22:48:24 24 4
gpt4 key购买 nike

我有一个用 C++ 编写的 vector 映射。对于每个 vector ,我想删除满足特定条件的条目。如果 vector 最终为空,我想将其从 map 中删除。我知道删除会弄乱迭代器,而双重迭代让我更加困惑。实现此目标的最佳方法是什么?

最佳答案

标准的可变容器循环:

for (auto it = m.begin(); it != m.end(); )
{
// work

if (/* need to delete */) // e.g "if (it->second.empty())"
{
it = m.erase(it);
}
else
{
++it;
}
}

关于c++ - 删除时如何遍历 vector 图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40644506/

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