我已阅读并重新阅读代码,但我无法找到合理的结论,为什么在运行时,在开始和结束时间之间没有创建换行符。赞赏积极和消极的建议。
((IObjectContextAdapter)this).ObjectContext.CommandTimeout = 180; // in sec
答案 0 :(得分:1)
让我们看看这部分代码。
while (cin >> start) {
vstart.push_back(start);
}
while (cin >> end) {
vend.push_back(end);
}
在第一个循环中,读入值直到cin>>start
到达文件结束字节,或者以不同方式失败。但你不清楚失败状态。
您必须调用cin.clear();
才能在第二个循环中读取新输入。
while (cin >> start) {
vstart.push_back(start);
}
cin.clear();
while (cin >> end) {
vend.push_back(end);
}
进一步阅读:Why would we call cin.clear() and cin.ignore() after reading input?
答案 1 :(得分:1)
只要可以成功提取while
值,就会执行此int
循环。在阅读了7个数字并且将所有输入都放入vstart
之后,它并不知道停止。
while (cin >> start) {
vstart.push_back(start);
}
我认为你想要这样的for
循环,包括在读取7个值后停止的逻辑。
for (int i = 0; (i < 7) && (cin >> start); ++i) {
vstart.push_back(start);
}