【发布时间】:2012-10-18 08:02:27
【问题描述】:
这是我第一次遇到这个问题,所以我不知道如何解决它。 编辑:没关系。看起来我的构造函数中的一个错误导致这种情况以某种方式发生
#include <iostream>
#include <fstream>
#include "graphm.h"
using namespace std;
int main() {
ifstream infile1("data31.txt");
for(;;){
GraphM G;
G.buildGraph(infile1);
if (infile1.eof())
break;
}
void GraphM::buildGraph(ifstream& infile){
int i = 0;
infile >> i; //it crashes here
}
我的文本文件只有 1 行: 5
【问题讨论】:
-
您能否为
GraphM和for循环的其余部分发布构造函数和析构函数。对G.buildGraph()的第一次调用不会设置eof(),因此将执行循环的第二次迭代。