我有一个通用的读取功能:
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
任何具有相同结果函数向量的解决方案?
答案 0 :(得分:0)
流就像一个安全指针,它在文件上运行,并将当前指向的值流式传输到某个目的地。在GenericRead
的末尾,我怀疑流“指向”文件的末尾。你需要将它回滚到文件的开头。
在fin.seekg(std::ifstream::beg)
之前尝试Rule
。
免责声明 - 您没有发布整个代码,这只是我的(可靠的)假设。