这是我到目前为止的代码
int main()
{
string word;
int wordcount = 0;
cout << "Enter a word to be counted in a file: ";
cin >> word;
string s;
ifstream file ("Names.txt");
while (file >> s)
{
if(s == word)
++ wordcount;
}
int cnt = count( istream_iterator<string>(file), istream_iterator<string>(), word());
cout << cnt << endl;
}
File Names.txt 有大量的单词和数字。我不太明白 istream 迭代器如何计算单词,但我得到了一些结果。我目前得到的唯一错误是
in function int main
error: no match for call to `(std::string) ()'
这发生在以“int cnt”开头的行中。我已经尝试了几个小时,但我对 C++ 不太熟悉,看来我必须创建一个额外的字符串或以某种方式更改单词字符串。
我将不胜感激任何帮助!