当我通过引用传递ifstream时,我遇到了一个奇怪的问题。
在我的main方法中,我创建了一个ifstream,然后通过引用将它传递给这个read方法:
void ArrayStorage::read(ifstream& fin)
{
if (fin.is_open())
{
string input;
getline(fin, input, '\n');
}
else
{
}
}
这应该可以正常工作,但是,我在ifstream的值中得到以下消息:
- fin {_Filebuffer = {_ Set_eback = 0xcccccccc _Set_egptr = 0xcccccccc ...}} std :: basic_ifstream> &安培;
有人有什么想法吗?
编辑:调用方法的代码:
ifstream fin1("data.txt");
ofstream out1("1-In-SortedRead.txt");
if(!fin1.is_open())
{
cout << "FAIL" << endl;
return 1;
}
ArrayStorage arrayStorage1;
// read in values into data structure
arrayStorage1.read(fin1);