在下面的代码中,我逐行循环读取文件。我希望当在while循环中调用 func 时,应该从上一次在while循环中结束的下一行读取该文件。我已经看到了一个解决方案,其中设置了一个计数器来计算循环内的行,但是有没有其他有效的方法从特定行读取文件。
void func(){
int counter=0;
ifstream file("file");
string str;
while (std::getline(file, str))
{
//some code
func();
}
}
答案 0 :(得分:0)
您可以编写代码来记住文件中的偏移量,然后前进到该位置,但这可能是一个糟糕的解决方案。相反,在函数外部打开文件并将流传递给函数(通过引用或指针)。