我什么时候停止从文件中读取?

fre*_*low 2 c++ flags stl ifstream eof

是否some_file.good()返回false读取的最后一个条目从文件,或试图读取超出后之后?那就是我应该写的

while (input.good())
{
    getline(input, line);
    // ...process
}
Run Code Online (Sandbox Code Playgroud)

要么

getline(input, line);
while (input.good())
{
    // ...process
    getline(input, line);
}
Run Code Online (Sandbox Code Playgroud)

Nim*_*Nim 9

试图超越那个......

你可以尝试:

while(getline(input, line))
{
// do stuff with line
}
Run Code Online (Sandbox Code Playgroud)

应该添加,该流实现operator!,它检查您通常会标记的标志.返回来自getline输入流,但由于运算符,会检查标志.