some_file.good()
在从文件中读取最后一个条目之后返回false
,还是在尝试读取之后返回?也就是说,我应该写
while (input.good())
{
getline(input, line);
// ...process
}
或者
getline(input, line);
while (input.good())
{
// ...process
getline(input, line);
}
?
试图阅读更多...
你可以试试:
while(getline(input, line))
{
// do stuff with line
}
应该添加,该流实现operator!
,它检查您通常会的标志。返回 fromgetline
是输入流,但由于操作符的原因,检查了标志。
如前所述,当没有更多行时,getline 返回零。eof()
如果设置了 EOF 标志(即在流上到达文件结尾),该方法也返回 true:
if(input.eof())
{
// end of file
}