IFSTREAM通过参数

时间:2015-07-30 11:33:59

标签: c++ fstream ifstream

我有一个通用的读取功能:

vector <string> GenericRead(ifstream &fin);

一个功能:

int Rule(ifstream &fin)
{
    vector <string> obj2=GenericRead(fin);
}

主:

ifstream fin;
fin.open("ex.txt");
vector<string>obj=GenericRead(fin); // works fine

Rule(fin) // no longer works, there are no elements in the function vector

任何具有相同结果函数向量的解决方案?

1 个答案:

答案 0 :(得分:0)

流就像一个安全指针,它在文件上运行,并将当前指向的值流式传输到某个目的地。在GenericRead的末尾,我怀疑流“指向”文件的末尾。你需要将它回滚到文件的开头。

fin.seekg(std::ifstream::beg)之前尝试Rule。 免责声明 - 您没有发布整个代码,这只是我的(可靠的)假设。