这两个函数有什么不同?除了std::cin之外,还有其他类型的istream吗?返回istream的意义是什么?
using namespace std;
istream& readInput(istream& in, vector<string>& wordList)
{
string word;
while (in >> word)
{
wordList.push_back(word);
}
in.clear();
return in;
}
void readInput(vector<string>& wordList)
{
string word;
while (cin >> word)
{
wordList.push_back(word);
}
cin.clear();
}
-
cin
绝对不是唯一的一个istream
,我认为它甚至不是最常用的一个。阅读例如ifstream
和istringstream
-
从函数返回
istream&
可能在各种情况下都很有用-这取决于上下文。对于readInput
的简单调用,可以跳过它,使函数为void
。