我有一段代码:
void NeighborsList::insertVertexes(const ifstream & inputFile)
{
int tempS, tempT;
for (int i = 0; i < numOfVertexes; i++)
{
inputFile >> tempS;
inputFile >> tempT;
addEdge(tempS, tempT);
}
}
我正在尝试获取文件的输入。一旦我删除了函数参数-(ifstream&inputFile(中的常量,它就可以工作了。
给定const
对象或引用,只能执行const
操作。std::istream::operator>>
是而不是const
运算,因此此处可能不使用它。
std::istream::operator>>
不是const
操作是有道理的,因为它改变了流的可观察状态。例如,文件上的读取位置以及状态指示器(如fail
和eof
(都会发生更改。