Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我的代码中似乎有一个奇怪的错误,当我打电话时它崩溃了 dijkstra(cont)。“cont”是一个映射,map<string, poz> cont;其中 poz 是我自己的类,函数是void dijkstra(map<string, poz> cont). 我尝试将容器作为参考传递等等,但它没有产生任何效果。
dijkstra(cont)
map<string, poz> cont;
void dijkstra(map<string, poz> cont)
您正在按值传递容器,这意味着您将在它被传递时制作一个副本。迭代器必须指向生成它们的同一容器,否则您将收到“不兼容”错误。
尝试通过引用传递:
void dijkstra(map<string, poz> & cont)