gpt4 book ai didi

c++ - vectorS 的单个迭代器

转载 作者:太空宇宙 更新时间:2023-11-04 13:50:53 25 4
gpt4 key购买 nike

是否有一种有效的方法让单个 iterator 迭代 2 个对象 vector 的串联,就好像它们是一个对象一样?

这两个 vector 当然包含相同的数据类型。

更新:

我想我应该就我的问题和我的背景提供更多细节。这可能会回答一些问题:

事实上,我有一个属性存储该迭代器的最后位置,在一个方法中,我从上次调用中停止的最后位置开始迭代,该位置可能在第一个 vector 或第二个 vector 中.

最佳答案

这个解决方案怎么样?它可能不优雅,但我想它尊重标准。对吧?

vector<Whatever>::iterator it = vectorA.begin();
bool loopOnVectorA = true;

while(true) {

// My stuff here

if (loopOnVectorA && it == vectorA.end())
{
it = vectorB.begin();
loopOnVectorA = false;
}
else if (it == vectorB.end())
{
break;
}
else
{
varPtrIt++;
}
}

关于c++ - vectorS 的单个迭代器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23469170/

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