我需要从迭代器的某个位置向后读取一个 vector ,并将最多 n1 个值放入字典数组中。
虽然我想创建一个循环并递减迭代器,但由于某些原因我陷入了无限循环。
我认为 while 条件有问题?
//I read all the vSignal vector
while (vSignalIt != vSignal.end()) {
i = 0;
vSignalIt2 = vSignalIt;
//Filling the dictionnary array
if (vSignalIt != vSignal.begin()) {
do
{
dictionnary[i] = *vSignalIt2;
vSignalIt2--;
i++;
} while (vSignalIt2 != vSignal.begin() || i < (uint8_t)n1);
}
//Do something with the value of dictionnary and increase vSignalIt to advance forward in the vSignal vector
}
最佳答案
改变'||'到'&&'
关于c++ - 递减迭代器直到 vector 的 .begin(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39393182/