istream迭代器
利用输入流迭代器istream_iterator进行文件操作:
std::ifstream i_file("data.txt"); //打开文件
istream_iterator<string> getStr(i_file); //从i_file读取字符串
istream_iterator<string> eof;//尾后迭代器
while (getStr != eof)//判断是否到达尾部
{
std::cout << *getStr << std::endl;
++getStr;//迭代器移动
}
输入初始化
istream_iterator<int> getInt(cin); //从cin 中输入字符串
istream_iterator<int> eof;//尾后迭代器
vector<int> v(getInt,eof);//循环读取,直到输入不是int数据为止
注意:不可利用这个方式读取字符串,否则无法结束输入