【发布时间】:2015-12-17 21:53:20
【问题描述】:
我有一个相当大的项目,它实现了 Dijkstra 的算法来模拟网络发送数据包,我遇到了一个我从未见过的问题;
我已经设法将问题缩小到这个范围:
//Member function of vertex
unordered_map<Vertex *, int> getEdges()
{
return _edges; //same data type as return type
}
//Call to member function
Vertex *t = //Arbitrary vertex
unordered_map<Vertex*, int> edges = t->getEdges();
由于某种原因,在调用此函数时,我收到错误“列表迭代器不兼容”。有谁明白为什么会这样?
编辑: 暂时删除
编辑2: 结果我从 getEdges() 得到了一个空的 unordered_map,因为我做了最后一分钟的更改。显然这会导致“列表迭代器不兼容”。
为了其他人从我的错误中吸取教训,我稍后会将代码上传到更永久的位置。
【问题讨论】:
-
这是一个运行时错误,对吧?请包含一个实际演示问题的最小可编译示例。谢谢。
-
是的,这是运行时错误,我可以压缩文件/病毒扫描并将其链接到您。
-
@TheAnonyMoose1234512:不,在这里发一个Minimal, Complete, and Verifiable Example 我应该能够复制发布少量代码,运行它,得到完全相同的运行时错误