Я прошу прощения за длинный код, но я пытался обнаружить ошибку и действительно не могу найти ее. Есть ошибка, когда я пытаюсь запустить его.
void setADist(vector<Facility> &vFac, vector<Client> &vClient, vector<Edge> &vEdge, vector<Node> &vNode){
...
vector<Edge> temp(vEdge);
float *distance;
...
temp.push_back(Edge(101, 101, facEndNode, py(vFac[i].getLongitude(), x, vFac[i].getLatitude(), y)));
Graphs *g1 = new Graphs();
struct Graph* graph1 = g1->createGraph(temp.size());
for (int k = 0; k < temp.size(); k++){
//g1->addEdge(graph1, temp[k].getStartNode(), temp[k].getEndNode(), temp[k].getDist()); //THIS LINE CAUSES THE EXCEPTION
}
//g1->printGraph(graph1);
//distance = g1->dijkstra(graph1, vFac[i].getNodeID());
}
}
}
}
Закомментированная строка вызывает исключение, когда я вызываю метод.
Я попытался запустить следующий код отдельно в main (), и исключение не было найдено, поэтому он не может быть связан с классом Graphs.
Graphs *g = new Graphs();
struct Graph* graph = g->createGraph(vEdge.size());
for (int i = 0; i < vEdge.size(); i++){
g->addEdge(graph, vEdge[i].getStartNode(), vEdge[i].getEndNode(), vEdge[i].getDist());
}
//g->printGraph(graph);
Очень ценю, если кто-то может предоставить мне решение.
Задача ещё не решена.