我遇到了一个很酷的STL示例,它使用istream_iterators从std输入(cin)复制到向量 .
vector<string> col1;
copy(istream_iterator<string>(cin), istream_iterator<string>(),
back_inserter(col));
我如何做类似的事情从文件流直接读入容器?让我们说一个包含内容的简单文件:
“快速的棕色狐狸跳过懒狗 . ”
我希望每个单词都是复制行后面向量中的一个单独元素 .
3 回答
成功打开文件后,将
cin
替换为文件流对象:实际上,您可以将
cin
替换为任何C标准输入流 .知道了吗?
col
将包含您传递给std::stringstream
的字符串的单词 .与fstream实例完全相同而不是cin .
我不认为复制函数是必需的,因为向量具有带有begin和end作为迭代器的构造函数 .
因此,我认为这对你来说没问题:
冗余()是删除Most_vexing_parse