是否有一种有效的方法可以让单个iterator
迭代2个对象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++;
}
}