0

在尝试使用 for 循环填充 char 向量时遇到了这个错误,“Vector iterator not incrementable”。该循环应该检查第一个向量中每个正确字母的索引位置,然后相应地用相同索引处的字母填充第二个向量。循环中有什么东西导致了这个错误吗?

    for (filler = word.begin(); filler != word.end(); filler++)
    {
        if (*filler == letter)
            guess.insert(filler, letter);
    }
4

1 回答 1

0

填充器是向量“单词”的迭代器。它不能用作插入猜测的第一个参数,因为过滤器不指向猜测。

如果您希望它出现在同一个索引中,您可以使用填充符重建索引 - word.begin()。然后你可以用它来索引猜测

for (filler = word.begin(); filler != word.end(); filler++)
{
    if (*filler == letter)
        guess.insert(guess.begin() + (filler - word.begin()), letter);
}
于 2013-09-02T06:35:19.803 回答