我很好奇std :: getline()的实现

时间:2018-04-20 10:03:59

标签: c++ file std ifstream getline

我正在使用std::getline阅读.txt文件。 我这样编码,我对std::getline()的返回值非常好奇。

fileifstream变量。)

while(!file.eof())
{
    string line;
    getline(file, line);
    cout<<line<<endl;
}

所以,我想知道的是为什么getline可以获取文件中的所有行。 getline有迭代器吗? 我想知道文件光标是如何移动的。

1 个答案:

答案 0 :(得分:1)

第二次看完你的问题后,我想我知道问题是什么(...可能......)

getline不知道你在文件中的位置,那就是流工作。 getline只是从当前位置读取,直到它引用分隔符。 getline无需跟踪文件中的当前位置,因为该簿记由ifstream完成。