Я пытаюсь создать вершины, только если они еще не существуют, поэтому я в основном делаю:
p_graph — это указатель на класс Graph, где я пытаюсь сравнить vert1, который является строкой, со всеми другими строками в графе, и если он есть, я хочу перейти к приведенному выше утверждению else. В классе Graph у меня есть следующий код:
но когда я смотрю на код с помощью итератора отладчика, «it», похоже, не получает getName (), что является еще одной строкой в классе Vertex, поэтому сравнение со строкой v можно сделать. Как мне решить эту проблему?
Вот вершинный конструктор:
На самом деле это выглядит так, как будто вы не вставляете свою вершину в график после ее создания:
if (!(p_graph->vertexInGraph(vert1))) { // if vert1 is not already in graph
v1 = new Vertex(vert1, i);
i++; // increments vertex number
}
Этот кусок кода, вероятно, нужно что-то вроде
p_graph->insertVertex(v1);
Других решений пока нет …