for循环用于检查哈希表值的存在而不是迭代

时间:2017-10-17 05:18:53

标签: c++ for-loop hashtable

我正在创建一个类型为vector<的哈希表。矢量>在这种情况下,这是一个字符串。在我检查给定单词是否在哈希表中的函数中,我有一个for循环,它通过碰撞向量检查是否存在给定的单词。由于某种原因,for循环不是迭代,b总是== 0.我已多次检查table [index] .size()的值是多少,并且它高于零。

        for( int b=0; b < table[index].size(); b++)
        {
            cout<< "b: "<< b << endl;

            if (table[index][b] == object)
            {
                return 1;
            }

            else
            {
                return 0;
            }
        }

1 个答案:

答案 0 :(得分:2)

在每种情况下,您都会从for循环返回。 所以它进行1次迭代,然后从循环中退出。 第一次迭代是b = 0