这两个功能有何不同?除了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();
}
答案 0 :(得分:0)
cin
绝对不是唯一一个istream
,我认为它甚至不是最常用的一个。阅读例如ifstream
和istringstream
。
从函数中返回istream&
在各种情况下都很有用 - 它取决于上下文。对于readInput
的简单调用,可以跳过它并创建函数void
。