为什么编译器无法识别return语句中的值?

问题描述 投票:0回答:1

我正在编写具有布尔返回值的程序,但收到错误。该程序应该在包含列表的向量中搜索字符串,列表包含字符串或a

vector<list<string>> 

但是由于某些原因,我收到此错误

error: return-statement with no value, in function returning ‘std::vector<std::__cxx11::basic_string<char> >’ [-fpermissive]
      return;

此错误指向我发布的代码中的第一个return语句。我不明白当两个return语句都具有bool返回类型时,为什么对程序这么说。几乎就像编译器无法识别我的return语句中的返回类型一样。

bool Stringset::find(string word) const
{
    hash<string> stringHash;

    //converts to find key
    int hashValue = stringHash(word) % size;


    // Check if iterator points to end or not
    auto iter = std::find(table[hashValue].begin(), table[hashValue].end(), word);

    if(iter != table[hashValue].end())
    {
        return true;
    }

    return false;
}

我有什么办法可以纠正此错误?

c++ hash return return-value
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.