当在cplusplus中使用fstream时,这个程序出了什么问题

min*_*_LT 4 c++

下一个程序出了什么问题?我更喜欢文件到达目的地.

ifstream file("main.cpp", ios::binary | ios::ate);
if (file) {
    //fstream::pos_type size = file.tellg();
    file.seekg(100, fstream::cur);
    if (file.eof()) {
        cout << "eof is true\n";
    }
}
Run Code Online (Sandbox Code Playgroud)

fstream到达文件的末尾,但为什么不回应"eof是真的".

Seb*_*edl 7

如果由于命中文件末尾而导致实际读取操作失败,则仅设置eof位(因此eof()仅返回true).寻求操作(显然)是不够的.